我在模型框中使用Telerik Ragdrid,但它没有在我从jQuery填充的Radgrid中的OnBatchEditCommand
上获取任何值。
这是我填充Radgrid:的代码
var tableView = $find("<%= RadGrid2.ClientID %>").get_masterTableView();
tableView.set_dataSource(data);
tableView.dataBind();
我没有得到值的代码:
protected void RadGrid1_BatchEditCommand(object sender, GridBatchEditingEventArgs e)
{
foreach (GridBatchEditingCommand command in e.Commands)
{
Hashtable oldValues = command.OldValues;
Hashtable newValues = command.NewValues;
}
}
@rdmptn在他的评论中指出了数据绑定。他是对的,在客户端绑定数据时,网格不会触发服务器事件。
此外,使用您的方法在客户端绑定数据将不支持CRUD操作,客户端数据绑定限制文章中也提到了这一点。
要实现客户端CRUD操作,必须通过ClientDataSource控件绑定数据。
如果要在服务器端处理CRUD操作,则需要使用NeedDataSource事件绑定数据,然后在BatchEditCommand事件中处理数据。有关更多详细信息,您可以查看Batch Editing Server附带文章。