这是我的jQuery数组 - ansList
$("#saveAndSubmitButton").click(function(){
var ansList=[];
var i=0;
for(i=0;i<queListSize;i++){
if($("#value1"+i).is(':checked')){
ansList.push("yes");
}
else if($("#value2"+i).is(':checked')){
ansList.push("no");
}
}
goToSaveAndSubmitAction(ansList);
}
});
function goToSaveAndSubmitAction(answersList){
var inputForSaveAndSubmit={
ansList:answersList
};
$.ajax({
type:"POST",
url:"../../restful/workflow/saveAndSubmitAction",
data:inputForSaveAndSubmit,
dataType:"json",
success: function(jsonData){
if(jsonData.success){
alert('Inside Success');
}
},
error:function (XMLHttpRequest, textStatus, errorThrown) {
// showAlertMessage("error",textStatus);
}
});
}
在Spring中,我的方法签名是
@RequestMapping(value="/workflow/saveAndSubmitAction")
public @ResponseBody String saveAndSubmitAction(@RequestParam(value="ansList",
required=false) String[] ansList ){
}
当我调试此代码以查看是否在ansList中填充了任何值时,我为ansList获取了null ...
可能是什么问题?
答案 0 :(得分:0)
你只需要让jQuery使用传统的编码方法。
$.ajax({
type:"POST",
url:"../../restful/workflow/saveAndSubmitAction",
data:$.param(inputForSaveAndSubmit, true), ,
dataType:"json",
success: function(jsonData){
if(jsonData.success){
alert('Inside Success');
}
},
error:function (XMLHttpRequest, textStatus, errorThrown) {
// showAlertMessage("error",textStatus);
}
});
或在提交XHR
之前调用此方法jQuery.ajaxSettings.traditional = true;