2012-08-28 92 views
1

我正在使用struts2(版本2.1.8)和jquery插件(版本1.8.3)來構建web 應用程序。struts2 jquery在表單提交上加載相同的頁面

我在這樣的方式設計,其中上提交一個表單,同一頁面獲取上一個UI加載一個簡單的用例 : 1)如果有一個從驗證錯誤,應在同一顯示驗證消息頁。 2)如果有成功消息,消息將顯示在同一頁面上。

我面臨的問題是,在這兩種情況下,struts2都重定向到struts.xml中指定的結果 ,但是在單獨的頁面上並且現有頁面消失。

以下是我的主頁。(我使用的標籤面板設計的標籤。)

<%@ taglib prefix="s" uri="/struts-tags"%> 
<%@ taglib prefix="sj" uri="/struts-jquery-tags"%> 
<html> 
    <head> 
    <sj:head jqueryui="true"/> 
    </head> 
    <body>  
    <s:url var="addUserUrl" action="inputUser"/> 
    <s:url var="deleteUserUrl" action="getDeleteUsers"/> 
    <sj:tabbedpanel id="mytabs2"> 
     <sj:tab id="tab1" href="%{addUserUrl}" label="Add User"/> 
     <sj:tab id="tab2" href="%{deleteUserUrl}" label="Delete User"/> 
    </sj:tabbedpanel> 
</body> 
</html> 

首頁被加載與 「addUserUrl」(inputUser.action)返回的數據,符合市場預期。(ADDUSER。 jsp,如下面在struts.xml中配置)

但是,當提交addUser.jsp時,success-add.jsp或addUser.jsp顯示爲單獨的頁面,並且不在同一頁面內,具體取決於成功或驗證錯誤配置在struts.xml中

有沒有什麼辦法可以將這兩個頁面作爲單獨頁面顯示在主頁本身而不是 中。

<action name="inputUser" class="addUserAction" method="input"> 
     <result name="form">addUser.jsp</result>    
    </action>  

    <action name="addUser" class="addUserAction" method="addUser"> 
     <result name="success">success-add.jsp</result> 
     <result name="input">addUser.jsp</result> 
    </action> 
+0

指的是鏈接:http://code.google.com/p/struts2-jquery/wiki/SubmitTag,我現在在AddUser.jsp文件中使用sj:submit標籤,如下所示。 其中targets =「tab1」是頁面homepage.jsp上的標籤ID。但即使在嘗試上面的代碼之後,相同的頁面也不會顯示。 – Atul

回答

0

我認爲 - 基於HTML代碼的標籤標記生成 - 提交標籤應該是這樣的:

<sj:submit name="submit" value="AjaxSubmit" href="%{ADDUSER}" targets="Add_User"/> 
0

有可能是在你的頁面的JavaScript錯誤是問題,導致該jQuery插件的結合回調sj標籤。這很可能是由於你的一些腳本與插件使用的jquery腳本相沖突造成的。檢查你的JavaScript錯誤日誌,並嘗試評論腳本標籤(最有可能的另一個jQuery腳本)來找到罪魁禍首。

相關問題