0

Ajax リクエストの後で、自分のページをリダイレクトする良い方法を探しています

成功した場合は、現在の uri (location.href) を変換したいと思います

http://my.domain.com/jm/app.html?application=test&keyword=pp&data=&enum=&end=

の中へ

http://my.domain.com/jm/app.html#Results?application=test&keyword=pp&data=&enum=&end=

#Results を uri パスの後に追加しますが、クエリ文字列を保持したいのですが、そのための正規表現を見つけて location.href に適用するのはおそらく見苦しいです

ページ内を閲覧するためのjqueryメソッドはありますか?
お気に入り

$.redirectTo("Results")
4

2 に答える 2

2

location.hashプロパティを見ましたか?

ちなみに、このプラグインは、ハッシュの変更を検出し、それに反応するのに非常に役立ちます。jQuery hashchange

于 2012-04-28T15:53:44.523 に答える
0

History.jsまたはjQuery BBQを使用することをお勧めします。どちらも HTML5 pushState を適切にサポートし、HTML4 ブラウザーのフォールバックを提供します (例に似たハッシュを使用)。jQuery BBQ には、クエリ文字列を操作するための便利な関数もいくつかあります。

これが基本的な考え方です (History.js を使用)。成功したら、次のように場所を更新します。

var newUrl = "/app.htmlapplication=test&keyword=pp&data=&enum=&end=";

// Make AJAX request ...

// On success
History.pushState({}, null, newUrl);

状態/ハッシュ変更イベントのリスナーも実装する必要があります。History.js を使用すると、次のようになります。

History.Adapter.bind(window, 'statechange', function() {
    // The user probably hit the back button, do something...
});

例をかなり短くしたので、各プラグインのドキュメントをざっと見て、どれがプロジェクトに最も適しているかを確認してください。

于 2012-04-28T18:02:23.360 に答える