最近修了几个struts2.1升级到2.3后动态方法调用失效的bug,深有感悟,
原始方法可以参考我之前的博文:struts2.1升级到2.3后动态调用方法问题
但是我那种原始方法有一个局限,就是在submit那里写下的action不起作用,就算启动了动态方法调用也不行(我想应该是struts2.3的一个bug),所以为了完善这个功能,这里我再说一个用js的方法。
在<s:submit value="提交" οnclick="return submitAction('某某action')" />,添加onclick方法,然后再在js里面写上:
- function submitAction(actionName){
- document.form的name.action = actionName+".action";
- return true;
- }
或者是<s:submit value="提交" οnclick="submitAction('某某action')" />,注意少了一个return单词,然后在js里面写上:
- function submitAction(actionName) {
- document.form的name.action = actionName+".action";
- document.form的name.submit();
- }
现在struts2的动态方法调用基本都完善了,欢迎评论补充。
转载请标明原文出处:http://blog.csdn.net/u012367513/article/details/26177713