从没有jquery的html的按钮的onclick事件调用Spring mvc控制器的post方法

新手上路,请多包涵

我正在尝试使用按钮(不一定是为了提交)和 onclick 我想调用 spring mvc 的控制器方法,其 requestmethod 类型应该是 POST 而不是 GET。

 <input type="button" onClick="location.href='/result'"/>

这是我的控制器方法,在单击时被调用。

 @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 时,它不会被调用。请为此建议我的出路,如果我错过了前面的某些东西,请告诉我。

原文由 iknownothing 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 302
1 个回答

试试这个

HTML:

 <input type='button' value='Submit'>

记者:

 $('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 请求,你的控制器应该有这个注释 method = RequestMethod.GET

并且如果您想要不使用 Jquery 的 POST 请求,请使用 Form

 <form action="/result" method="post">
        <input type="submit" value="Submit" />
</form>

原文由 Ahmad 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题