我在Controller中有一个RequestMapping:
@Controller
class aController{
...
@RequestMapping("/action", method=RequestMethod.POST, params="actionName"){
//some logic
}
}
在JSP中:
<form action="/action" type="POST">
<input type="submit" name="actionName" value="actionName">
<input type="submit" name="xyz" value="XYZ">
</form>
问题是当使用Chrome或Firefox浏览器时,JSP的请求会被映射。但是在IE中它无法锁定请求映射,因为IE处理按钮名称的方式。要解决此问题,我必须添加以下内容:
<input type="hidden" name="actionName" value="actionName"/>
问题是有多个页面有多个按钮映射到不同的RequestMapping(params =“”)。我不想开始在任何地方添加隐藏字段。有没有更好的方法来解决这个愚蠢的IE问题?
答案 0 :(得分:0)
根据我的说法,您应该使用javascript来处理提交按钮的onclick事件,然后从该功能中您可以更改表单标记的操作。尝试将所需参数添加到操作中,并将表单方法声明为GET。
我认为这可以解决您的问题。
干杯。
答案 1 :(得分:0)
我通过使用隐藏字段解决了IE问题,其中所需的actionName of button作为值传递:
<input type="hidden" name="actionName" value="actionName">
此解决方案解决了我在IE浏览器上遇到的问题。