this fiddleを参照してください。グローバルAJAXリスナを使用してAJAXコールのソースを取得することはできますか?
私は、次のコードをお持ちの場合:AJAXを発射ボタンのIDを渡すために
$("button").click(function(event) {
var targetId = event.target.id;
$.ajax({
type: "GET",
url: "https://fiddle.jshell.net",
success: function(data) {
alert('target id is: ' + targetId);
}
});
});
// Is it possible for this to work the same as the above somehow?
$(document).ajaxSuccess(function(event, xhr, ajaxOptions, data) {
var targetId = event.target.id; // Event.target is `document` so does not work
alert('target id is: ' + targetId); // I want this to be the same alert as above.
});
ことが可能です:
HTML:
<div class="button-wrapper">
<button id='firstButton'>
first button
</button>
<button id='secondButton'>
second button
</button>
</div>
JSをグローバルリスナー($(document).ajaxSuccess
)に電話をかけますか?
この質問の "グローバル" の部分は、おそらく悪い考えです。 '$ .ajax'を使ったライブラリを後で持ってきた人は、物事を混乱させるでしょう。 – 4castle
@ 4castle私は確信していません - おそらく私の質問は明確ではありませんか?グローバルイベントハンドラ用のjQueryライブラリ(https://api.jquery.com/category/ajax/global-ajax-event-handlers/)全体が、最初の場所。私はjQueryがその質問のための十分な大きさの図書館であり、適切に計量され、適切に答えられているように感じています。何か不足していますか? – YPCrumble
私は、*すべて* ajaxリクエストへのIDチェックのための追加のイベントハンドラを追加すると、ajaxリクエストを頻繁に使用するアプリケーションでは過度の負荷になると懸念しています。 ajaxリクエストの一部だけにidを持つDOMエレメントが関連付けられます。ある程度、それは好みの問題です。私は、いつどのようなコードが実行されるかを明示したい人のような人です。 – 4castle