我在我的Spring mvc中使用jQuery提交表单。表单提交,不正确地调用弹簧控制器
这是jquery调用提交表单。
function uploadJqueryFormForEdit(documentId){
alert("ccc");
$('#result').html('');
$("#editDocumentForm").ajaxForm({
success:function(data) {
alert("ddd");
$('#result').html(data);
alert("eee");
//getProjectSegment('documents','DocumentSegment',projectId);
$('#editDocumentForm').remove();
},
error:function(e){
alert(e.responseText);
$("#msgDiv").html('Error');
},
dataType:"text"
}).submit();
}
这就是我要提交的表单。
<form action="cont/uploadEdit?documentId=15&projectId=2" name="editDocumentForm" id="editDocumentForm" enctype="multipart/form-data" method="post">
当我在动作url中使用一个参数,例如。
action="cont/uploadEdit?documentId=15"
它工作正常。但是当我用两个参数
action="cont/uploadEdit?documentId=15&projectId=2"
它不叫控制器方法正确(不打这个方法在所有)
这里控制器方法
@RequestMapping(value = "cont/uploadEdit", method = RequestMethod.POST)
public @ResponseBody String uploadEdit(@ModelAttribute("sessionId") String sessionId,@RequestParam("documentId") int documentId,@RequestParam("projectId") int projectId,MultipartHttpServletRequest request, HttpServletResponse response, UploadedFile fileDetail,UserBean userbean,Model model) throws SessionException {
logger.info("uploadEdit");
}
为什么我不能在动作标签中使用两个参数?
这是工作的罚款与第一动作
@RequestMapping(value = "cont/uploadEdit", method = RequestMethod.POST)
public @ResponseBody String uploadEdit(@ModelAttribute("sessionId") String sessionId,@RequestParam("documentId") int documentId,MultipartHttpServletRequest request, HttpServletResponse response, UploadedFile fileDetail,UserBean userbean,Model model) throws SessionException {
logger.info("uploadEdit");
}
您是否配置了MultiPartResolver? –
@ArunPJohny,是的MultiPartResolver配置正确。它适用于一个参数。 – Channa
尝试发送数据为'data:$('#editDocumentForm')。serialize()+“&par1 = 1&par2 = 2&par3 = 232”'并且让我知道。 –