2012-11-14 105 views
1

我是not using struts2-jquery-plugin。最新只能使用struts2-json-plugin with JQueryStruts2經過AJAX驗證成功後需要重定向到另一頁

想要將redirect/actionredirect成功驗證後轉到另一頁面。如果我這樣做<result type="redirect">/quiz-success.jsp</result><result>/quiz-success.jsp</result>不起作用。

問題:你們是怎麼做到的?

1 - Is it possible to do redirection etc in struts.xml during AJAX request? 
2 - I have to redirect/page refresh in $.ajax({ success: function (data) {} }); like below? 

$.ajax({ 
        url: url, 
        type: 'POST', 
        data: viewData, 
        //dataType: "json", 
        cache: false, 
        complete: postValidation, 
        error: function (XMLHttpRequest, textStatus, errorThrown) { 
         console.log("error :"+XMLHttpRequest.responseText); 
        }, 
        success: function (data) { 
         Window.location = "/cms/home.action"+sessiontoken; 
        } 
       }); 

struts.xml的

<package name="validation" namespace="/validation" extends="json-default"> 
     <action name="quizAjax" class="com.myapp.action.QuizAction" method="sayHi"> 
      <interceptor-ref name="jsonValidationWorkflowStack"/> 
      <result name="input">/quiz-ajax.jsp</result> 
      <result type="redirect">/quiz-success.jsp</result> 
     </action> 
    </package> 

回答

2

因爲您使用javascript調用服務器,所以不能使用<result type="redirect">/quiz-success.jsp</result>。這是從服務器獲取答案的腳本,而不是頁面,因此您必須在腳本中處理它。

+0

是的,我明白這一點。 – Pirzada

+0

@ Christian我正在使用__tiles__和__struts 2__。我怎樣才能從腳本重定向? – Pawan

+0

@ Saipavan579我不能幫你,因爲我不使用瓷磚。 – Christian

0

改變這一行,看看這對你的作品:

改變這種

Window.location = "/cms/home.action"+sessiontoken; 

這個

window.location.replace(window.location.href+"/cms/home.action"+sessiontoken); 
+0

我知道Window.location的工作。我有兩個以上的問題。我想知道是否有任何方法通過struts.xml進行重定向,如 /quiz-success.jsp。如果不是唯一的選擇是我在問題2中提到的。 – Pirzada

相關問題