2013-02-17 79 views
0
<a class="removeApp" data-app="12">Close Something </a> 
$('.removeApp').click(function (e) { 
    $.ajax({ 
     async: false, 
     type: 'POST', 
     url: '@Url.Action("Remove", "Something")', 
     data: { 
      id: $(this).data("app") 
     }, 
     success: function (result, data) { 
      console.log(this.data); //gives id=12 
      console.log (this.data["id"]) ///gives nothing how do i get just 12 
     } 
    }) 
}); 

我試圖獲取通過參數名傳遞的數據我該如何做?獲取通過Ajax調用成功後的參數值

+1

您的數據來自哪裏?你剛剛得到一個「id = 12」的字符串嗎?在這種情況下,你需要解析字符串。 – 2013-02-17 21:38:37

+0

from ancor data -app elements – 2013-02-17 21:43:06

+0

你可以發佈你正在發佈的服務器方法嗎? – glosrob 2013-02-17 21:56:00

回答

0

那麼數據應該看起來像「{'id':12}」,這將是JSON,你可以使用jQuery.getJSON()函數,這將返回一個JavaScript對象 - 這正是你想要的。
我認爲你目前得到的字符串等於「id = 12」作爲響應 - 所有的HTTP數據都是一個字符串,這就是它的工作原理。
您可以用一些JavaScript解析字符串:

var id = parseInt(data.split("=")[1]); 

這是一個有點硬編碼和醜陋但是。

+0

我如何得到它,如果它的{「id」:9} 我累了this.data.id上面它返回undefined – 2013-02-17 22:07:32

+0

你使用其他的jQuery功能? JavaScript需要'評估'JSON字符串。 – 2013-02-17 22:17:03