html - 从没有jquery的按钮的html onclick事件调用Spring mvc Controller post方法

标签 html spring-mvc

我正在尝试使用按钮(不一定是为了提交目的)和 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/

相关文章:

java - 如何避免在我的java bean中使用Spring注释并仅在配置类中使用它们?

java - Controller 中的 Spring Boot @Async 方法正在同步执行

javascript - 如何将右键单击上下文菜单绑定(bind)到右键单击 jQuery

javascript - 如何将 div 宽度设置为等于 Javascript 变量?

html - 将 Org 模式文件导出为 HTML 后的意外链接行为

java - 如何在 Spring Boot 的每个请求中获取当前用户?

hibernate - 扩展@NotEmpty 以接受其他类

javascript - 从htm中设置js函数的变量

html - 如何创建一个水平滚动的div,里面有多个div

jquery - Spring MVC Portlet + JQuery + Jackson + JSON 响应 - 找不到资源