2013-04-15 14 views
6

最初のページの読み込み時にのみ関数を実行し、ページを更新するときは実行しません。最初のページで関数を実行するjavascriptでページを更新しないときに読み込む

たとえば、ユーザーが[送信]ボタンをクリックしたときや、他のページの更新時には実行しないでください。

ispostbackプロパティを使用して.netで回避することはできますが、JavaScriptでこれを行うにはどうすればよいですか?

+4

私は 'sessionStorage'を使って追跡していると思います。 –

+0

私はsessionStorageもあまりにもabit汚いと思っていたでしょうが、それは動作しますね –

+0

多分それは重要ではありませんが、その機能は何ですか? –

答えて

0

ポストバックを確認するにはaspを使用していますので、クライアントサイドフラグをレンダリングするだけです。 aspxの中

:クライアントスクリプトで

<script type="text/javascript">window.ispostback = <%= Page.IsPostBack %>;</script> 

if (!window.ispostback) { 
    // do stuff 
}; 
1

だから、あなたが唯一の最初のページビューをキャッチしたいです。それはunique page viewとも呼ばれます。 ページビューがあり、各ページのリロード時に増分されます。

最初のセッションは、訪問のセッションを管理する(たとえば、Cookieを使用して)ことを追跡する必要があります。ページが最初に訪問されると、クッキーが設定され、カウンタがインクリメントされます。クッキーが既に設定されている場合にページが再び訪問された場合、カウンタは増分されません。 がクッキーが削除され、ユーザーがブラウザを変更していない限り。

2ページ目は、1ページずつ更新されるたびに増分されます。簡単にjavascript経由で達成されました。ページリフレッシュステータスをプログラムで管理するには、this answerをお勧めします。スクリプトの実行を動的に管理するには、ClientScriptManagerをお勧めします。

関連する問題