当下面的 Action 方法尝试返回 Json 结果时,没有数据对象返回到 $.ajax 函数。因此,我假设我没有在将数组作为 Json 结果发送之前对它们进行序列化。我需要保留数组名称,即:ProgTypes、Ages 等。所以当数据从服务器返回时,我知道哪个数组是哪个数组。
$.ajax({
url: '/Education/FilterLists',
dataType: 'json',
data: { svalues: svalues, firsttype: $firsttype },
traditional: true,
success: function (data) {
//do something with data
alert('done');
}
});
..
public JsonResult FilterLists(int[] svalues, string firsttype)
{
//Some logic takes place and below arrays are produced
int[] ProgTypes = programs.Select(x => x.FilterValToCatMaps.FirstOrDefault(c => c.FilterValue.FilterID == 5).FilterValueID).Distinct().ToArray();
int[] Ages = programs.Select(x => x.FilterValToCatMaps.FirstOrDefault(c => c.FilterValue.FilterID == 4).FilterValueID).Distinct().ToArray();
int[] Countries = programs.Select(x => x.ParentCategory.ParentCategory.ParentCategory.CatID).Distinct().ToArray();
return Json(new { progtypes = ProgTypes, ages = Ages, countries = Countries});
}