读书人

用AjaxPro调用后盾DataTable类型方法时

发布时间: 2013-09-18 14:17:40 作者: rapoo

用AjaxPro调用后—ataTable类型方法时未将对象引用到对象的实例
用AjaxPro调用后—ataTable类型的方法时总是出现未将对象引用到对象的实例。前台代码:

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)"/>


而我在 Page_Load中写就没事,而且还有DataTable中还有数据
 protected void Page_Load(object sender, EventArgs e)
{
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());
}
}
请问各位大神:这是什么原因呢! javascript ajax 实例 对象


[解决办法]
BDAService.GetObjectPropertyId这个方法有问题吧。。自己用firebug或者chrome开发人员工具监视下ajax返回的错误信息,定位到是哪句出问题再修改错误
[解决办法]
检查一下BDAService的赋值位置,可以在loadChecked中打断点看一下BDAService是否为null
[解决办法]
数据量不大不需要ajax,一次性发送到客户端就行了,不一定非得用ajax

读书人网 >Ajax

热点推荐