在以下代码中,ListView仅在第二次调用showValue()之后才会填充。 JSON请求执行并返回有效数据,但需要使用相同的Id调用两次才能填充数据。感谢帮助。
var marcasSelected;
var storeObject = {
id: ''
};
function showValue(Id) {
storeObject.id = Id;
$('#marcasListview').empty();
delete marcasSelected;
GetIngredientesAndMarcasByProductoId(storeObject.id);
GetMarcas();
return false;
}
function GetIngredientesAndMarcasByProductoId(id) {
$.ajax({...
success: function (data) {
marcasSelected = JSON.parse(data.d);
}
});
return false;
};
function GetMarcas() {
$.ajax({...
success: function (data) {
var html = '';
var marcas = JSON.parse(data.d);
var chk = ' ';
$.each(marcas, function (index, item) {
if (marcasSelected.length != 0) {
$.each(marcasSelected, function (key, marca) {
if (marca.MarcaId == item.MarcaId) {
chk = ', checked="checked"';
};
});
};
html += '<label><input type="checkbox"' + chk + '>' + item.MarcaId + item.Nombre + '</label>';
chk = ' ';
});
...
});
return false;
};