我在MVC3中有一个Web应用程序,我正在使用Telerik Grid Batch Editing。
批量编辑具有保存更改按钮,该按钮将UPDATED COLUMNS返回到控制器IEnumerable列表,如
[GridAction]
public ActionResult Update(IEnumerable<Customers> updated)
{
///user codes
}
但是如何收集更新的行并使用ajax将控件中的IEnumerable列表作为IEnumerable列表发送到控制器?
修改 我正在查看我的观点
我只想将更新的行数据发送到Controller并保存更改按钮可以执行此操作但在发送值之前我只想向用户询问“你确定要加载吗?”并且在发送数据之后我想刷新所有页面
所以我想用ajax请求来做这个,因为我也在使用ajax请求进行批量编辑
你对这种情况有什么看法吗?
答案 0 :(得分:4)
使用AJAX POST,因为我在测试的Javascript函数中使用了::
function TestAjax() {
var Test = [];
for (var i = 0; i < 5; i++) {
Test.push({ ID: i, Name: "RJ" });
}
$.ajax({
type: 'POST',
url: rootUrl('Home/TestPost'),
contentType: "application/json",
//data: { Test: JSON.stringify( data) },
data:JSON.stringify( {Test: Test}),
success: function (data) {
alert("Succeded");
}
});
}
在服务器端(即在Controller中)使用类似::
的东西public ActionResult TestPost(IEnumerable<TestViewModel> Test)
{
return Json(3);
}
ViewModel包含与::
不同的数据类型的不同属性public class TestViewModel
{
public long ID { get; set; }
public string Name { get; set; }
}
这很好用。可能这会对你有帮助。