[英]Passing an array of integers from JavaScript to a controller action of List<int>
我正在使用JavaScript代码将数据发布到以C#编码的控制器操作中。 尝试通过以下方式创建的javascript中传递整数数组时,出现了空值:
var answers = [];
answers.push(1);
answers.push(2);
answers.push(3);
我可以从javascript警报中看到,当我尝试Answers.tostring时,这些值正进入数组中,并且按预期方式获得了值“ 1、2、3”,然后尝试了以下postdata
var postData = {
'surveyID': surveyID,
'questionID': questionID,
'answers': answers,
'answerText': null,
'comment': comment,
'questionType': questionType
};
这是针对以下控制器动作,但整数数组似乎并没有传递给控制器动作,因为我的List始终为null
[HttpPost]
public PartialViewResult GoForward(int surveyID, int questionID, List<int> answers, string answerText, string comment, string questionType)
{}
有谁知道我如何才能将postdata数组转换为不为null的List?
因为MVC希望以QueryString模式显示数据,如下所示:
answer = 1&answers = 2&answers = 3
如果您使用jQuery进行AJAX,则默认值为
答案[] = 1&answers [] = 2&answers [] = 3
您可以尝试traditional
选项
$.ajax({
//...
traditional:true,
//...
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.