我的代码:
$.getJSON("registro/backend.php?action=list&id="+sel.value, function(data){
var options = [];
for (var i=0; i<data.rows.length; i++) {
options += '<option value="' + data.rows[i].id + '">' + data.rows[i].name + '</option>';
}
$("#select").html(options);
})
当要加载的数据太大时(许多以JSON编码的数据),此代码冻结了选择和导航器。
有没有办法在后台加载或改善性能?
答案 0 :(得分:0)
尝试使用$ .each函数...
$.getJSON("registro/backend.php?action=list&id="+sel.value, function(response){
var options = [];
$.each(response,function(index,data){
options += '<option value="' + data.rows[index].id + '">' + data.rows[index].name + '</option>';
}
}
$("#select").html(options);
})
答案 1 :(得分:0)
您应该在循环中存储数组的长度,并存储变量以减少对数组的访问。
for (var i=0,len=data.rows.length; i<len; i++) {
var row = data.rows[i];
options += '<option value="' + row.id + '">' + row.name + '</option>';
}