0

私がこれをしていると仮定します:

$.get("/api/GetComments?post=" + post, function(data) {
    var a = JSON.parse(data);
    console.log("comments=" + a.count);
});

ただし、を実行するときは.get、応答処理関数がアクセスできる要求に関するメタデータを利用できるようにする必要があります (サーバーとの間でやり取りする必要はありません)。つまり、次のようなものですか?

$.get("/api/GetComments?post=" + post, function(data, id_of_div_to_update) {
    var a = JSON.parse(data);
    $("div[id=" + id_of_div_to_update + "]").text(a);
});
4

3 に答える 3

1

通常、ajax 呼び出しはクロージャー (関数) スコープでライブであるため、これは必要ありません。これは、コールバック データを視覚化するために必要な追加データについて知っている (必要なデータを定義する) ことを意味します。

// ...
(function(){
    // ...
    var id_of_div_to_update = '#output';
    // ...
    $.get("/api/GetComments?post=" + post, function(data) {
        var a = JSON.parse(data);
        console.log("comments=" + a.count);
        console.log("div_to_update=" + id_of_div_to_update);
    });
})();
于 2013-10-23T10:03:29.750 に答える
0

はい、get リクエストの成功または失敗後に実行されるコールバック関数を AJAX に追加できます。例えば

$.ajax({
  url: url,
  data: data,
  success: function(response){
    console.log(response)
    // process  
  },
});

jQuery のバージョンが 1.8 以上の場合は、'done'、'fail'、'always' コールバックを使用する必要があります。詳細については、http://api.jquery.com/jQuery.get/を参照してください。

于 2013-10-23T10:02:23.033 に答える