Javascript 如何将IEnumerable列表从Ajax发送到控制器
我在MVC3中有一个web应用程序,我正在使用Telerik网格批处理编辑 批量编辑具有“保存更改”按钮,可将更新的列返回控制器IEnumerable列表,如Javascript 如何将IEnumerable列表从Ajax发送到控制器,javascript,ajax,asp.net-mvc,telerik-grid,telerik-mvc,Javascript,Ajax,Asp.net Mvc,Telerik Grid,Telerik Mvc,我在MVC3中有一个web应用程序,我正在使用Telerik网格批处理编辑 批量编辑具有“保存更改”按钮,可将更新的列返回控制器IEnumerable列表,如 [GridAction] public ActionResult Update(IEnumerable<Customers> updated) { ///user codes } [GridAction] 公共行动结果更新(IEnumerable更新) { ///用户代码 }
[GridAction]
public ActionResult Update(IEnumerable<Customers> updated)
{
///user codes
}
[GridAction]
公共行动结果更新(IEnumerable更新)
{
///用户代码
}
但如何收集更新的行并使数组像IEnumerable列表一样从带有ajax的Javascript发送到控制器
编辑
我把我的观点放在png上
我只想向控制器发送更新的行数据,保存更改按钮可以做到这一点,但在发送值之前,我只想问用户“您确定要加载吗?”在发送数据之后,我想刷新所有页面
所以我想用ajax请求来实现这一点,因为我也在用ajax请求进行批处理编辑
您对这种情况有什么经验吗?使用AJAX帖子,就像我在测试过的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");
}
});
}
这很好用。这可能会对您有所帮助。为什么要用JavaScript发送它?您不应该尝试手动解析它。请发布您的视图,以便我们可以看到有问题的代码。嗨@AndreiV我粘贴了my view.jpg,并解释了我想要什么。您应该使用JavaScript(或jQuery)在提交按钮上添加一个事件侦听器。点击,您只需显示一个
confirm
@AndreiV我试图放置事件,但单击后我必须将IEnumeratable列表发送到ControllerThnx@Rahul中的更新函数我了解您的操作,但我想发送所有更新的行数据,有些数据是十进制的,有些数据是字符串,我如何在网格中捕获更新的行???@saul没有任何数据类型。正如您在我的示例中所看到的,我正在传递ID(long)和Name(string)。好的,让我也用viewmodel编辑我的答案。
public ActionResult TestPost(IEnumerable<TestViewModel> Test)
{
return Json(3);
}
public class TestViewModel
{
public long ID { get; set; }
public string Name { get; set; }
}