Struts2 form.action的格式问题
我用的格式有两种,一种为myTaskAction_showList.do。xwork的配置为
<action name="myTaskAction_*" method="{1}" type="freemarker">/page/myTask/myTaskHomePage.ftl</result> <result name="showList" type="freemarker">/page/myTask/myTaskList.ftl</result> <result name="input" type="freemarker" >/page/myTask/myTaskCreate.ftl</result> <result name="modifyReq" type="freemarker">/page/myTask/myTaskModify.ftl</result> <result name="queryOrgan" type ="freemarker">/page/myTask/queryOrgan.ftl</result> <result name="queryUser" type ="freemarker">/page/myTask/queryUser.ftl</result> </action>
?用的是通配符的形式,感觉非常方便。
?
还有一种是myTaskCreateAction.do?method:showList,xwork的配置为
<action name="myTaskAction" type="freemarker">/page/myTask/myTaskHomePage.ftl</result> <result name="showList" type="freemarker">/page/myTask/myTaskList.ftl</result> <result name="input" type="freemarker" >/page/myTask/myTaskCreate.ftl</result> <result name="modifyReq" type="freemarker">/page/myTask/myTaskModify.ftl</result> <result name="queryOrgan" type ="freemarker">/page/myTask/queryOrgan.ftl</result> <result name="queryUser" type ="freemarker">/page/myTask/queryUser.ftl</result> </action>
现在的问题是如果我用第二种形式,ajax请求的时候无效,也就是说程序不能进入showList的方法。
?
应用场景:列表展示,通过prototype的函数查出列表,然后放到homePage的div的innerHTML里面。第一种请求方式一切OK,第二种方式程序没有执行到showList方法。不知道有没有人遇见过。
贴一下封装的js函数:
function init(){$('myTaskListForm').action="myTaskAction_showList.do?page.start=0";$("myTaskListDiv").innerHTML="<p>正在查询数据库</p>";pf.simpleSubmitForm("myTaskListForm","myTaskListDiv");}
封装的prototype的函数如下
/** * 从服务器端请求页面信息,先展示到指定的DIV中 * * 用于:form页面提交跳转。 * * @formId form页面的ID * @showElementId 将内容展示的DIV的ID * @CallBackFunction 回调方法 * @CallBackParameters 回调函数调用的参数,Object类型 */simpleSubmitForm : function(formId, showElementId, CallBackFunction,CallBackParameters) {pf.submitForm(formId, {onSuccess: function(transport) {var elementDiv = $(showElementId); elementDiv.innerHTML = transport.responseText; if(CallBackFunction!=undefined && typeof(CallBackFunction)=="function"){ if(CallBackParameters!=undefined && CallBackParameters!=null){ CallBackFunction(CallBackParameters); }else{ CallBackFunction(); } }}});},/** * form页面提交跳转 * * @formId form页面的ID * @showElementId 将内容展示的DIV的ID */submitForm : function(/*String*/formId, options) {$(formId).request(this.ajaxRequestOptions(options));},?
?