2017-05-31 71 views
0

的,我有以下的jQuery AJAX調用:jQuery的Ajax的POST:獲取值超出響應

$.ajax({ 
     method: "POST", 
     url: "/Agenda/Template", 
     dataType: 'json', 
     data: { "templateId": templateSelect.options[templateSelect.selectedIndex].value }, 
     complete: function (data) { 
      for (var key in data) { 
       var value = data[key]; 
       alert("key: " + key, "value: " + value); 
      } 
     }}); 

我知道,返回的數據具有如屬性:

  • 模板ID
  • 模板名稱
  • URL

但是,對於我的生活,我無法得到他們。

我的提醒顯示了很多不同的鍵...承諾,完成等,我只是無法找到我的價值觀。

+0

當您對console.log執行操作時,數據顯示的內容是什麼? – guradio

+0

@guradio鍵/值對的列表,例如「Promise」,「Done」等。無法找到我的數據。 –

+0

你可以在OP – guradio

回答

0

這聽起來AJAX回報承諾的對象,所以你可以使用$.when()功能:

$.when( 
    $.ajax({ 
     method: "POST", 
     url: "/Agenda/Template", 
     dataType: 'json', 
     data: { "templateId": templateSelect.options[templateSelect.selectedIndex].value } 
    }) 
).then(function(data, textStatus, jqXHR) { 
    for (var key in data) { 
     var value = data[key]; 
     alert("key: " + key, "value: " + value); 
    } 
}); 
+0

已經嘗試過。它給了我相同的價值。我只需要獲取我即將回來的數據。 –

+0

我更新了我的答案,請嘗試。 –

0

嘗試。它可能對你有幫助。

$.ajax({ 
     method: "POST", 
     url: "/Agenda/Template", 
     dataType: 'json', 
     data: { "templateId": templateSelect.options[templateSelect.selectedIndex].value }, 
     success: function (data) { 
      $.each(data,function(key,value) { 
       console.log("Key : " + key + " value : " + value); 
      }); 
     } 
});