作为jquery ajax函数的结果返回一个数组

时间:2013-02-09 15:01:15

标签: asp.net-mvc arrays jquery json.net

我想通过ajax调用从控制器返回一个数组, 我的数组是一个通用数组(一个对象列表,例如Employee类的实例)。

我想在结果上循环,并且可以访问对象属性,例如Name, 我不知道,如何从C#action(json或...),

返回结果的通用数组

行动的回报类型是什么?

这是我的代码:

$.ajax({
url: '@Url.Action("EditDayRequest", "Message")',
type: 'Post',
cache: false,
data: { IsChecked: $(this).is(':checked')},
success: function (result) {
// i want to loop here on returned array and get values
}

1 个答案:

答案 0 :(得分:2)

假设您的客户ViewModel看起来像这样

public class CustomerVM
{
   public string Name { set;get;}
   public string JobTitle { set;get;}
}

您可以使用Json方法从Action方法返回Json。

[HttpPost]
public ActionResult EditDayRequest()
{
  var customerArray=GetCustomerArrayFromSomewhere();
  return Json(new { Items=customerArray.ToList()});
}

在你的成功回调中,你可以循环通过项目

success:function(result){
   $.each(result.Items,function(index,item){
       alert(item.Name);
       alert(item.JobTitle);
   });

}