所以我有一个$.post
,返回一些json_encode($array);
$array
是一维的,它包含数字:2、4、6。
所以现在data
持有 json 数据,我该如何循环并为我的#time
选择器设置选项?和value=""
显示文本应该是数组中的数字。
所以我有一个$.post
,返回一些json_encode($array);
$array
是一维的,它包含数字:2、4、6。
所以现在data
持有 json 数据,我该如何循环并为我的#time
选择器设置选项?和value=""
显示文本应该是数组中的数字。
像这样的东西应该工作:
$.each(data, function(i, val) {
$("<option />").text(val).val(val).appendTo("#time");
});
演示:http: //jsfiddle.net/tmSqR/
更新。您的数据未从字符串格式解码为 JSON。在进行迭代之前添加dataType
属性$.post
或使用。data = JSON.parse(data)
演示:http: //jsfiddle.net/tmSqR/1/
也许你想这样做:
var s = $('select#time');
s.empty();
$.each(data, function(key, value){
s.append($("<option />").text(value).val(key);
//or
s.append($("<option value="key">value</option>");
});
实际上json_encode($array)
from返回的数据PHP
是 javascript 中的字符串,需要先转换为对象才能循环,所以$.parseJSON
在循环开始之前使用
var obj=$.parseJSON(data);
$.each(obj, function(k, v) {
$("<option />").text(v).val(v).appendTo("#time");
});