用AjaxPro调用后台DataTable类型方法时未将对象引用到对象的实例
用AjaxPro调用后台DataTable类型的方法时总是出现未将对象引用到对象的实例。前台代码:
function DataTable_CallBack(returnValue) {
var table = returnValue.value;
for (var i = 0; i < table.Rows.length; i++) {
document.getElementById("MyDIV").innerHTML += table.Rows[i]["ObjectProID"].toString() + "<br/>";
}
}
[AjaxPro.AjaxMethod]
public DataTable loadChecked()
{
DataTable dTable = BDAService.GetObjectPropertyId(6);
return dTable;
}
<input id="btn_Ajax6" type="button" value="测试" onclick=" App.Web.WebUI.Admin.Payroll.CNPRStructConfig.loadChecked(DataTable_CallBack)"/>
protected void Page_Load(object sender, EventArgs e)请问各位大神:这是什么原因呢! javascript ajax 实例 对象
{
AjaxPro.Utility.RegisterTypeForAjax(typeof(App.Web.WebUI.Admin.Payroll.CNPRStructConfig));
if (!IsPostBack)
{
DataTable dt = BDAService.GetObjectDefine();
rep_Objict.DataSource = dt;
rep_Objict.DataBind();
DataTable dTable = BDAService.GetObjectPropertyId(6);
PageHelper.Alert(dTable.Rows.Count.ToString());
}
}
[解决办法]
BDAService.GetObjectPropertyId这个方法有问题吧。。自己用firebug或者chrome开发人员工具监视下ajax返回的错误信息,定位到是哪句出问题再修改错误
[解决办法]
检查一下BDAService的赋值位置,可以在loadChecked中打断点看一下BDAService是否为null
[解决办法]
数据量不大不需要ajax,一次性发送到客户端就行了,不一定非得用ajax