我正在尝试使用按钮(不一定是为了提交目的)和 onclick 我想调用 spring mvc 的 Controller 方法,其请求方法类型应该是 POST 而不是 GET。
<input type="button" onClick="location.href='/result'"/>
这是我的 Controller 方法,在点击时被调用。
@RequestMapping(value="/result")
public ModelAndView postPrintHello(@ModelAttribute("product") Product product){
ModelAndView model = new ModelAndView();
model.addObject("product", product);
model.setViewName("result");
return model;
}
但是当我添加 RequestMethod.POST 时,它不会被调用。 请建议我解决此问题的出路,如果我错过了前面的内容,请告诉我。
最佳答案
试试这个
HTML:
<input type='button' value='Submit'>
JS:
$('input').on('click', function () {
$.ajax({
type:'POST',
url :"result",
success: function(data) {
console.log('success',data);
},
error:function(exception){alert('Exeption:'+exception);}
});
e.preventDefault();
});
没有 JS 或 JQuery
<input type="button" onclick="location.href='/result'" value="Submit" >
注意:使用这种方式你只能发送 GET 请求,你的 Controller 应该有这个注解 method = RequestMethod.GET
如果你想要不使用 Jquery 的 POST 请求,请使用 Form
<form action="/result" method="post">
<input type="submit" value="Submit" />
</form>
关于html - 从没有jquery的按钮的html onclick事件调用Spring mvc Controller post方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37268321/