1

さまざまな応答に移動するために AJAX を使用しようとしている単純な検索アプリケーションがあります。

私の問題は非常に単純で、簡単な解決策があると確信していますが、それを見つけることができません。

私はこの方法で新しいリクエストを送信しています:

xhrObj.open('post', 'search.do', false);
xhrObj.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
xhrObj.send('id=1');

このリクエスト呼び出しと必要なビジネス ロジックの後、ブラウザがバックエンドで指定された新しいページにビューを変更することを望みます。これの代わりに、応答でページの HTML コードを受け取りますが、このページへのナビゲーションは行われません。

asyncパラメータがfalseフローに設定されている場合、期待どおりに動作するという印象を受けました。

AJAX 呼び出しの後に新しいページに移動するように JS スクリプトを作成するにはどうすればよいですか。location.hrefこの新しいページはサーバー上の .JSP ビルドであるため、新しいページにジャンプするために使用できないことに注意してください。

4

2 に答える 2

0

guthubに似たものが必要な場合は、HTML5HistoryAPIが必要です。HTML5 History APIがないと、リダイレクトを行わずにURLを(JSの助けを借りて)操作することはできません。

通常、URL(domain /#hash / blabla / bla)でハッシュを使用できますが、それも適切ではありません。

于 2012-06-08T08:23:55.417 に答える
0

おそらく、search.do から URL を要求してから、これを行う必要があります。

xhrObj.onreadystatechange=function()  {
  if (xhrObj.readyState==4 && xhrObj.status==200)
    {
    window.location=xhrObj.responseText;
    }
  }

お役に立てれば。

于 2012-06-08T08:33:11.627 に答える