2013-06-20 24 views
1

如何使用jQuery.get方法獲取數據?jQuery獲取發回的數據

function send_data(pgId) 
{ 
    for(var i = 0; i < pgId.length; i++) 
    { 
     // $.get(url, data, success(data, textStatus, jqXHR)) 
     $.get('index.php?page=' + pgId[i], pgId[i], function(respTxt, status, xhr) 
     { 
      if(status === "success") 
      { 
       alert("Data received: " + respTxt + "\n"); 
       alert("Data sent: " + pgId[i]); //<-- ??? 
      } 
     }); 
    } 
} 

什麼我送可選參數,服務器不接受該參數,我想的唯一的事情就是來傳遞參數給回調函數時,成功的工作。 pg_array是DIV ID的數組。

我需要發送數據時,阿賈克斯成功或至少參數傳遞給定製的回調時,它成功處理。

我也是web開發新手,所以,道歉。我搜索了很多,但我無法理解它顯示的任何樣本。

問候。

回答

0

您可以用閉包將保持ID值做到這一點:

function send_data(pgId) { 

    var callbackWithId = function (pgId) { 
     //This will keep the pgId for the returned function 
     return function(respTxt, status, xhr) { 
      if(status === "success") { 
       alert("Data received: " + respTxt + "\n"); 
       alert("Data sent: " + pgId); 
      } 
     } 
    } 

    for(var i = 0; i < pgId.length; i++) { 
     $.get('index.php?page=' + pgId[i], pgId[i], callbackWithId(pgId[i])); 
    } 
} 
+0

感謝,工作得很好! :-) – user2399415