2012-03-29 2 views
0

i den folgenden Code verwenden Anfrage an den Server

var url='getDNormalForm.action'; 
var inputStr="test"; 
    var simTyp="andOr"; 
var pars={inputStr:inputStr, simTyp=simTyp}; 
$.post(url,pars); 

ich meine Handlung definiert in struts.xml wie folgt habe zu senden:

 <action name="getDNormalForm" class="ClassNameAction" method="getDNormalForm"> 
      <result name="andOr">test.jsp</result> 
     </action> 

Wenn ich die Post, die ich in sehen Firebug folgende:

POST http://localhost:8081/myProject/getDNormalForm.action 200 OK 23ms 

und ich sehe in der Antwort der Registerkarte Inhalt der Seite test.jsp, was bedeutet, dass ich die Post schicken und empfange die Antwort erfolgreich.

Meine Frage ist: Wie kann ich die Seite test.jsp als aktuelle Seite anzeigen?

+0

Wo ist der Rückruf? Es sollte einen dritten Parameter in '$ .post' geben. – apnerve

+0

Ich habe folgendes versucht: $ .post (url, pars, simulate); Funktion simulate (Daten) {return data.html (Daten); } aber nichts ändern :( –

+0

Wenn Sie wirklich die aktuelle Seite durch das Ergebnis/Ausgabe von test.jsp ersetzen möchten, sollten Sie nicht eine Ajax POST-Anfrage dafür verwenden. Sie sollten lieber auf die normale Seite aktualisieren von a form submit. Der Hauptgrund für die Verwendung von Ajax ist, dass es keine Seite aktualisieren! – devnull69

Antwort

0
$.post(
    url, 
    pars, 
    function(response){ 
    $("body").html(response); 
    }, "html"); 

So ist der dritte Parameter ist die Callback-Funktion, das heißt die Funktion, die aufgerufen wird, wenn die Post-Anforderung beendet (es ist asynchron, was bedeutet, dass es nicht die Ausführung des Skripts in Browser nicht blockiert). jQuery ruft diese Funktion auf und übergibt ihr die Antwort als erstes Argument. Beachten Sie den vierten Parameter - "html", der angibt, welches Format die Variable "response" haben soll (zB text, json, xml, html). Innerhalb der Funktion ersetzen wir nur den Inhalt des Körpers durch den empfangenen Inhalt.

+1

was ist mit dem Hinzufügen einer kleinen Beschreibung zu helfen OP verstehen Sie Ihren Code? –

+0

Noted. Danke – FreeCandies

Verwandte Themen