我错过了如何发布到ActionMethods以在此处提取数据?Ajax post不会将数据填充到下拉选择列表
我需要对ActionMethod执行一个简单的javascript/jquery调用,它将使用IQueryable(或List)类型的Json对象中的数据填充我的下拉菜单。
于是,我两个选择:
function populateuUsers(id) {
$.post("/User/GetUsersJson/", { id: id }, function (data) {
if ($.isEmptyObject(data)) {
alert("Empty");
}
$.each(data, function (item) {
alert(item);
$("#user-list").append(
$("<option></option>").text(data[item].FullName).val(data[item].Id)
);
});
}, "json");
}
我得到 “数据不确定”
然后我尝试了一个错误:
function populateUsers(id) {
$.ajax({
type: 'post',
datatype: 'json',
url: "/User/GetUsersJson/" + id,
success: function (data) {
alert(data);
$.each(data, function (item) {
alert(item);
$("#users-list").append(
$("<option></option>").text(data[item].FullName).val(data[item].Id));
});
},
error:function()
{
alert(data);
}
});
}
也不起作用。 注意事项...我设置了断点并在GetUsersJson Action方法中验证了这些数据用户控制器得到了正确的填充并返回到了javascript函数。
为什么它不工作呢?为什么“数据未定义”,它的行为就像没有任何回报?
预先感谢您。
什么是你GetUsersJson动作看起来像在控制器上? – MattSavage
只需从存储库中提取数据并返回Json(myUsers)。 myUsers对象类型为IQueryable。 当用断点调试时,我在该列表对象中看到约10个用户。让我知道你是否想看到实际的代码。 –
Shenaniganz
也许它的行为就好像没有返回任何东西,因为没有返回。你是否打开了浏览器调试器,并在回调函数上设置了一个断点,并实际检查了数据对象以查看其中是否有内容? –