2016-07-01 16 views
0

私は解決策を見つけるのに2日間を費やしましたが、stackoverflowにはこれに対する正解がありません。 は、私はそれが働いて、完全にデータを与えている複数のAjaxリクエストを防ぐ方法は?

$.ajax({ 
    url: 'http://localhost/movies/data/home_data.php', 
    type: 'POST', 
    dataType: 'json', 
    cache: false, 
    success: function(data) { 

     var home_contents_data=''; 

     $.each(data, function(index, element) { 

      home_contents_data += '<a href="single-movie.html" onclick="readSingleMovie2(\''+data[index].id+'\')">More Details</a>'; 

     }); 

    } 
}); 

、onloadイベント2つのAjaxの機能最初のロード値を持っています。それは "readSingleMovie2()"としてこの値を別のajax関数に送信したいonclick関数呼び出しを持っています。これは私の2番目のajax関数です

これも完全に機能しており、その関数データは関数の中に入っています。 しかし、私の問題です。 1回目の機能から2回目の値をクリックすると2番目の関数のURLは複数回読み込まれます。 アイデアを得るためにFirebugのスクリーンショットイメージを添付しました。

enter image description here

私はアンバインド、でpreventDefault、preventStopにしようと、私が知っている偽...すべてをキャッシュし、インターネットを取得します。しかし、私はまだこのためのより良い解決策を探しています。 この問題を解決するのを手伝ってください。

あなたの貴重な時間と回答に本当に感謝します ありがとう!

+1

はそれを結合あなたのonclickのを見ることなく、完全なhtmlとjsのコード –

+1

を表示するには、なぜこれが起こっている伝えることは不可能であるが、問題は、スクリプトの一部にバグのためである可能性が高いです。 – CSL

+0

最初のAjaxコールがボタンをクリックしていると仮定して、それを無効にしてから2回目のコールが終了したときに再び有効にするのはなぜですか?これは、ボタンが連続して呼び出された場合に役立ちます。 –

答えて

0

アンバインド、preventDefaultおよびpreventStopの代わりに、try off()を実行します。

これを参照してください:http://api.jquery.com/off/

関連する問題