与jquery表单操作spring mvc thymeleaf混淆

与jquery表单操作spring mvc thymeleaf混淆,jquery,spring-mvc,thymeleaf,Jquery,Spring Mvc,Thymeleaf,我有一个表单,我通过点击按钮来设置动作。在提交表单时,我将数据发送给控制器,控制器处理数据并返回页面 e、 g 我从。。。输入一些数据,单击按钮,数据将发送到,现在我在浏览器中。如果我再次单击按钮,浏览器将转到错误的位置!谁能告诉我,我为什么要去???我如何解决这个问题 <form id="theForm" class="form-horizontal" data-toggle="validator" method="POST" role="form" th:object="${int

我有一个表单,我通过点击按钮来设置动作。在提交表单时,我将数据发送给控制器,控制器处理数据并返回页面

e、 g

我从。。。输入一些数据,单击按钮,数据将发送到,现在我在浏览器中。如果我再次单击按钮,浏览器将转到错误的位置!谁能告诉我,我为什么要去???我如何解决这个问题

<form id="theForm"  class="form-horizontal" data-toggle="validator" method="POST" role="form"  th:object="${intProvDefApproval}">
...
</from>

<button type="button" id="ablehnen" class="btn btn-danger" th:text="#{ablehnen}"></button>


$("#ablehnen").click(function() {
$("#theForm").prop( 'action', "ablehnen");
$("#theForm").submit();
}

...
$(“#ablehnen”)。单击(函数(){
$(“#theForm”).prop(‘action’,‘ablehnen”);
$(“#表格”).submit();
}

每次触发click事件时,都会在操作的末尾添加字符串“ablehnen”。请尝试在表单本身中而不是从jquery中设置属性action=“ablehnen”。请参见下文

<form id="theForm"  class="form-horizontal" data-toggle="validator" method="POST" action="ablehnen" role="form"  th:object="${intProvDefApproval}">

。。。

可能您可以尝试使用相对于根的相对路径。 $(“#theForm”).prop(‘action’,“/ablehnen”); 或 root_path=“” 操作路径=根路径+“/ablehnen”

$(“#theForm”).prop('action',action#u path)

问候,,
Krishan

我发现了错误…我忘记了控制器的映射…控制器有一个额外的映射@RequestMapping(“/myController”)…但我不知道为什么它在第一个klick时工作没有任何错误

正确答案是:

$("#theForm").prop( 'action', "/myController/ablehnen");

您可以从控制器添加一些代码吗?函数ablehnen做什么?控制器负责更改url。
@RequestMapping(path=“/test”,method=RequestMethod.POST)公共字符串测试(@ModelAttribute(“intProvDefApproval”)IntProvDef4Approval intProvDefApproval,Model Model,Locale){return(“templates/edit”);}
..
@RequestMapping(path=“/ablehnen”,method=RequestMethod.POST)公共字符串ablehnen(@modeldattribute(“intprovdapproval”)IntProvDef4Approval intprovdapproval,Model Model,Locale){return(“templates/edit”);}
问题是,我在页面上有多个具有不同操作的按钮。因此我无法在表单中设置它