0

私は AJAX の学習体験を楽しんでいますが、実際にいつ使用するかについてのレビューが混在する記事をピックアップしています。

私の質問は - 人がページを更新したらどうしますか? 処理されて返され、div および span プレースホルダーに配置されたすべての ajax 情報が失われています。

そのステータスまたはajax呼び出しをどのように維持しますか、それともすべてリセットしますか??? ログインページで ajax を実行することは想定されていないのでしょうか、それとも多くの Cookie を設定せずに設定を保持する方法はありますか?

私はコードを持っていますが、ウィンドウに収まりきらないほどです。すべての ajax 作業を保存する方法があるかどうか、またはリロードによって消去する必要があるかどうかを尋ねた方がよいと思いましたか?

4

3 に答える 3

2

更新の合間にデータを使用location.hashまたは保持することを検討できます。html5 pushstate

HTML5プッシュ状態は、まったく新しいページをリロードすることなく、ブラウザのロケーションバーのURLを変更します。これにより、各ステージに独自のパーマリンクを設定または表示できるようになりますが、古いブラウザではサポートされていません。

Location.hashは同じことを行いますが、URLのハッシュを変更します。たとえばhttp://server.com/location#hash、さまざまなライブラリを使用してこのハッシュ値を読み取り、ページを変更できます。これには、古いブラウザと互換性があるという利点があります。

http://benalman.com/code/projects/jquery-hashchange/docs/files/jquery-ba-hashchange-js.html

于 2013-02-25T05:14:31.297 に答える
1

私が見たほとんどの AJAX アプリは、アプリケーション全体の状態をリセットする以外に、ページの更新を処理しません。Yahoo またはほとんどのサイトで試してみてください。

前後のクリックも大混乱を引き起こします (ただし、HTML5 ではこれらのイベントをトラップできます)。 localStoragesessionStorage役立つかもしれません。

通常、AJAX アプリは、ユーザーに警告するポップアップ メッセージを表示してアクションを防止しようとします (例: Are you sure you want to do that Dave?)

更新から回復するには、おそらくアプリの状態をサーバーに保存し、セッション ID へのポインターのみを Cookie に保存する必要があります。

于 2013-02-25T05:10:10.950 に答える
0

通常のリロードでは、ページ内のデータがすべて消去されることは明らかです。success function本当にajax 呼び出しでCookie を作成するよりも何かを保存したい場合は、ナットです。

また、どこで ajax を使用するかを決定する必要があります。ajaxの主な目的は、同じページでデータを取得し続けることですが、更新を行わないためです。更新すると古いデータがなくなるためです。

答えが得られたことを願っています。

于 2013-02-25T05:12:56.553 に答える