【发布时间】:2017-10-01 03:31:54
【问题描述】:
我有以下ajax 代码用于从服务器获取用户详细信息。我正在从服务器端生成html table 并将结构作为字符串返回。这工作正常,但当用户记录太多时我得到undefined。可以在 ajax 中传递的数据有什么限制?
有没有一种替代方法可以用来在客户端生成 html 表?
var param = {};
param.CompanyID = $('[id*=txtCoID]').val();
$.ajax({
type: 'POST',
url: 'AjaxAsync.aspx/BindActiveUsers',
beforeSend: function () { },
data: '{P: ' + JSON.stringify(param) + '}',
contentType: 'application/json; charset=utf-8',
//processData: false,
//timeout: 1000000,
//async: true,
//cache: false,
dataType: 'json',
success: function (rsp) {
document.getElementById('dvUsers').innerHTML = rsp.d;
},
error: function (error) {
document.getElementById('dvUsers').innerHTML = error.d;
}
});
【问题讨论】:
-
究竟哪个变量显示为未定义?例如,我知道一个事实,如果您的代码出于任何原因进入“错误”回调,则
error.d不存在 - 检查 jQuery ajax 文档以了解该对象中实际存在哪些字段。如果您正在进入“错误”回调,服务器返回的错误是什么(您可以在浏览器的网络选项卡中的开发人员工具中看到它)?而且,究竟有多少条记录是“太多”?你是如何确定的? -
@ADyson
undefined处于“错误”中,但是当我向服务器返回的记录添加限制时,代码运行无错误 -
这是我得到的错误
500 - undefined -
我只按照下面回答中的建议更改了配置文件,我曾经收到错误 500 因为超时,我正在使用 aspx 项目
-
浏览器控制台中没有错误,建议在我限制服务器返回的记录时触发请求,我的代码运行良好,正在生成一个大约 3000 行的 html 表。
标签: javascript jquery ajax