求教,struts2里面的表单提交-可不可以在同一个s:form标签里提交至不同的action

时间:2021-07-30 08:36:02
可不可以在同一个s:form标签里提交至不同的action

像这样~但是这样写没用~还是会提交到login.action

(设置了两个action,一个login,一个test)
<s:form action="user/login">
       <s:textfield name="username" key="user" />
       <s:textfield name="password" key="pass" />
       <s:submit key="login" name="login" method="login"/>
   <s:submit key="regist" name="regist" method="regist"/>
   <s:submit key="test" action="user/test" id="test_test" name="test" method="test"/>
</s:form>

查看源码的时候name属性都是“action:user/test!test”,但就是没法提交到test.action里面

10 个解决方案

#1


为什么要这样写。

简单一点就是 直接弄一个action.  既然你要提交的路径不同,那就在提交的button里面做文章。

或者弄两个按钮就是,不同的按钮用js控制跳转不同的action地址,不就行了么

或者同一个button也能控制,通过变量的控制也能跳转不同的action

#2


js改变form的action属性

#3


引用 1 楼 shijing266 的回复:
为什么要这样写。

简单一点就是 直接弄一个action.  既然你要提交的路径不同,那就在提交的button里面做文章。

或者弄两个按钮就是,不同的按钮用js控制跳转不同的action地址,不就行了么

或者同一个button也能控制,通过变量的控制也能跳转不同的action

我试试~其实我就是想只用struts~不用js呢~

#4


引用 2 楼 xiaopeipei2004 的回复:
js改变form的action属性

可以只用struts的框架实现么。。。。

#5


引用 1 楼 shijing266 的回复:
为什么要这样写。

简单一点就是 直接弄一个action.  既然你要提交的路径不同,那就在提交的button里面做文章。

或者弄两个按钮就是,不同的按钮用js控制跳转不同的action地址,不就行了么

或者同一个button也能控制,通过变量的控制也能跳转不同的action


可以

#6


这个问题,之前帮老师改系统时就改了很多遍了,从struts2.1升级到2.3后,struts2.3有自己本身的bug。
只用struts2来解决: http://blog.csdn.net/u012367513/article/details/23496909
说明一下,struts2.3已经不支持多action调用了(反正试了很多次都不行),只支持多method调用(就是在submit那里action不起作用了,method还可以起作用),如果硬要多action调用,只能用js来模拟,请看下面链接,
用js辅助解决: http://blog.csdn.net/u012367513/article/details/26177713
以上都是我解决问题后总结出来的,如果哪位大神有更好的方法,欢迎一起探讨探讨。
求教,struts2里面的表单提交-可不可以在同一个s:form标签里提交至不同的action

#7


引用 6 楼 u012367513 的回复:
这个问题,之前帮老师改系统时就改了很多遍了,从struts2.1升级到2.3后,struts2.3有自己本身的bug。
只用struts2来解决: http://blog.csdn.net/u012367513/article/details/23496909
说明一下,struts2.3已经不支持多action调用了(反正试了很多次都不行),只支持多method调用(就是在submit那里action不起作用了,method还可以起作用),如果硬要多action调用,只能用js来模拟,请看下面链接,
用js辅助解决: http://blog.csdn.net/u012367513/article/details/26177713
以上都是我解决问题后总结出来的,如果哪位大神有更好的方法,欢迎一起探讨探讨。
求教,struts2里面的表单提交-可不可以在同一个s:form标签里提交至不同的action

非常感谢~原来已经不支持了~

#8


一般用jQuery来做、、

#9


用button跳到js改变action值
function find(){
document.getElementById("action").value="test";
  return true;
 }

#10


<form action="/admin.do" method="post" name="adminForm">
onclick="isExport(this.form,'export')"
function isExport(aform,actionMethod){
aform.method.value=actionMethod;
aform.submit();
}

#1


为什么要这样写。

简单一点就是 直接弄一个action.  既然你要提交的路径不同,那就在提交的button里面做文章。

或者弄两个按钮就是,不同的按钮用js控制跳转不同的action地址,不就行了么

或者同一个button也能控制,通过变量的控制也能跳转不同的action

#2


js改变form的action属性

#3


引用 1 楼 shijing266 的回复:
为什么要这样写。

简单一点就是 直接弄一个action.  既然你要提交的路径不同,那就在提交的button里面做文章。

或者弄两个按钮就是,不同的按钮用js控制跳转不同的action地址,不就行了么

或者同一个button也能控制,通过变量的控制也能跳转不同的action

我试试~其实我就是想只用struts~不用js呢~

#4


引用 2 楼 xiaopeipei2004 的回复:
js改变form的action属性

可以只用struts的框架实现么。。。。

#5


引用 1 楼 shijing266 的回复:
为什么要这样写。

简单一点就是 直接弄一个action.  既然你要提交的路径不同,那就在提交的button里面做文章。

或者弄两个按钮就是,不同的按钮用js控制跳转不同的action地址,不就行了么

或者同一个button也能控制,通过变量的控制也能跳转不同的action


可以

#6


这个问题,之前帮老师改系统时就改了很多遍了,从struts2.1升级到2.3后,struts2.3有自己本身的bug。
只用struts2来解决: http://blog.csdn.net/u012367513/article/details/23496909
说明一下,struts2.3已经不支持多action调用了(反正试了很多次都不行),只支持多method调用(就是在submit那里action不起作用了,method还可以起作用),如果硬要多action调用,只能用js来模拟,请看下面链接,
用js辅助解决: http://blog.csdn.net/u012367513/article/details/26177713
以上都是我解决问题后总结出来的,如果哪位大神有更好的方法,欢迎一起探讨探讨。
求教,struts2里面的表单提交-可不可以在同一个s:form标签里提交至不同的action

#7


引用 6 楼 u012367513 的回复:
这个问题,之前帮老师改系统时就改了很多遍了,从struts2.1升级到2.3后,struts2.3有自己本身的bug。
只用struts2来解决: http://blog.csdn.net/u012367513/article/details/23496909
说明一下,struts2.3已经不支持多action调用了(反正试了很多次都不行),只支持多method调用(就是在submit那里action不起作用了,method还可以起作用),如果硬要多action调用,只能用js来模拟,请看下面链接,
用js辅助解决: http://blog.csdn.net/u012367513/article/details/26177713
以上都是我解决问题后总结出来的,如果哪位大神有更好的方法,欢迎一起探讨探讨。
求教,struts2里面的表单提交-可不可以在同一个s:form标签里提交至不同的action

非常感谢~原来已经不支持了~

#8


一般用jQuery来做、、

#9


用button跳到js改变action值
function find(){
document.getElementById("action").value="test";
  return true;
 }

#10


<form action="/admin.do" method="post" name="adminForm">
onclick="isExport(this.form,'export')"
function isExport(aform,actionMethod){
aform.method.value=actionMethod;
aform.submit();
}