关于下拉列表绑定的小问题 在 php 中 $redata=array(); $redata[-2]='CPU'; $redata[-3]='操作系统'; $redata[-4]='尺寸'; foreach ($temp as $key=>$value){ $redata[$value['id']]= id2name('prodcut_conf_type',$value['conf_type']); } 最后得到的结果 "-2":"CPU","-3":"\u64cd\u4f5c\u7cfb\u7edf","-4":"\u5c3a\u5bf8","1":"\u786c\u76d8" 由于编码问题。中文没有显示,这个没问题 翻译过来是:"-2":"CPU","-3":"操作系统","-4":"尺寸","1":"硬盘" 硬盘是从数据库表中读出来的 然后是html $.post('{:U('Product/getTypeToMenuJson')}',{ptype:$("#mid").val()},function(data) { var option = $("").text('--请选择--').val('') menudroplist.append(option); for(var key in data.data){ var option = $(" ").text(data.data[key]).val(key) menudroplist.append(option); } }); 绑定到一个下拉列表。 可最后结果是 --请选择-- 硬盘 CPU 操作系统 尺寸 而不是 --请选择-- CPU 操作系统 尺寸 硬盘 请问大侠这是为什么,应该如何修改------解决方案-------------------- 你返回的是 js 对象,而 js 的对象是按哈希表组织属性的 你如果返回数组或对象数组的话就没问题了 二维数组 [["-2","CPU"],["-3","\u64cd\u4f5c\u7cfb\u7edf"],["-4","\u5c3a\u5bf8"],["1","\u786c\u76d8"]] 对象数组 [{"-2":"CPU"},{"-3":"\u64cd\u4f5c\u7cfb\u7edf"},{"-4":"\u5c3a\u5bf8"},{"1":"\u786c\u76d8"}] 对于二维数组<br />d = data.data;<br />for(var i=0; i<d.length; i++){<br /> var option = $("<option>").text(d[i][1]).val(d[i][1])<br /> menudroplist.append(option);<br />}<br /> Nach dem Login kopieren
------解决方案-------------------- {"data":[["-2","CPU"],["-3","\u64cd\u4f5c\u7cfb\u7edf"],["-4","\u5c3a\u5bf8"],["1","\u786c\u76d8"]],"info":"","status":1} Nach dem Login kopieren
------解决方案--------------------