日期:2014-05-16  浏览次数:20711 次

jquery如何处理由php上传的json格式的数据
原本有这么一段代码:
<div id="test2" class="dropdown" tabIndex="2" style="position:relative; z-index:10;">
    <select name="sex">
                        <option value="">sex select</option>
                        <option value="male">male</option>
                        <option value="famale">famale</option>
        </select> 
</div>


上面代码是jquery下拉框代码中选择数据的部分,但是这段代码是直接写到html页面上面。出于某种需要,比如动态的增加或不增加一项other,我想将这段代码修改下,对于js实在不熟,所以向大家请教下。

下面是我生成json数据的php代码:
<?php
        include ("../test/JSON.php");
        $json = new Services_JSON();

        $arr = array("sex select"=>"","male"=>"male","famale"=>"famale");
        $str = array("sex"=>$arr);

        $json = json_encode($str);
        echo $json;
?>

生成的数据格式如下:
{"sex":{"sex select":"","male":"male","famale":"famale"}}

生成并传递一个json对象。
我想让html页面中引用一个js文件中的函数来处理jquery的select那一部分,然后js文件会用到php代码上传来的json对象。
请教各位前辈,我该如何改造这段代码?
json jquery php

------解决方案--------------------
上个好像是错了

$.ajax(url,function(data){
    $.foreach(data,function(i,n){
         $.foreach(n,function(i,n){
             $("#selectid").append("<option value='"+i+"'>"+n+"</option>");
        });
     });
});

这个好像是正确的
------解决方案--------------------
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
        "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <title></title>
    <script type="text/javascript" src="../testDialog/jquery-1.7.1.min.js"></script>
    <script type="text/javascript">
        $.ajax({
            url:"test.json",//获取后台json数据的页面url
            type:"post",
            dataType:"json",
            success:function(data){
                var select = document.createElement("select");
      &nbs