在我的Spring mvc应用程序中。
我试图在Ajax调用上使用@ModelAttribute
。
function setCountryCode() {
var selectedCountry = $('select#country option:selected').val();
$('#contactNoCode').val('');
var updateUserFormModel = $("#updateUserForm").serialize();
$.ajax({
type : 'POST',
url : '${pageContext.request.contextPath}' + '/welcomeAjax/selectedCountry',
data:updateUserFormModel,
contentType: "application/json",-//here confused
dataType : "application/json",//here confused
success : function(response) {
//what to do here
},
error : function(xhr, ajaxOptions, thrownError) {
return false;
}
});
}
@RequestMapping(value = "/selectedCountry", method = RequestMethod.POST)
public @ResponseBody
<what to return here> selectedCountry(@ModelAttribute("userForm") UserDetailsDto userDetailsDto,BindingResult result,HttpServletRequest request, HttpServletResponse response) throws Exception
{
//setters for userDetailsDto
return <what to return here>;
}
在下拉onchange()
时,我正在进行ajax调用。
在userDetailsDto
我将获取所有表单数据,并将设置不同的字段。
现在帮助我如何将userDetailsDto数据设置为jsp表单。
或者,我可以使用json,text等。
var selectedCountry = $('select#country option:selected').val();
String selectedCountry = request.getParameter("selectedCountry");
并且
success : function(response) {
$('#contactNoCode').val(response);
但我正在努力避免这些request.getParameter
和).val(response)
不确定是否可能,通过ajax调用使用@ModelAttribute设置表单数据。 请帮帮我。
马努