Javascript 获取Ajax调用成功后传递的参数值 关闭某物 $('.removeApp')。单击(函数(e){ $.ajax({ async:false, 键入:“POST”, url:'@url.Action(“删除”、“某些东西”), 数据:{ id:$(此).data(“应用程序”) }, 成功:功能(结果、数据){ console.log(this.data);//给出id=12 console.log(this.data[“id”])///什么都不提供如何只获取12 } }) });

Javascript 获取Ajax调用成功后传递的参数值 关闭某物 $('.removeApp')。单击(函数(e){ $.ajax({ async:false, 键入:“POST”, url:'@url.Action(“删除”、“某些东西”), 数据:{ id:$(此).data(“应用程序”) }, 成功:功能(结果、数据){ console.log(this.data);//给出id=12 console.log(this.data[“id”])///什么都不提供如何只获取12 } }) });,javascript,jquery,ajax,Javascript,Jquery,Ajax,我正在尝试获取通过参数名传递的数据,我如何才能这样做?数据应该看起来像“{id':12}”,这将是JSON,您可以使用jQuery.getJSON()函数,这将返回一个javascript对象,这是您想要的。 我认为当前您得到的响应是一个等于“id=12”的字符串——所有HTTP数据都是一个字符串,这就是它的工作方式。 您可以使用一点javascript解析字符串: <a class="removeApp" data-app="12">Close Something </a&g

我正在尝试获取通过参数名传递的数据,我如何才能这样做?

数据应该看起来像“{id':12}”,这将是JSON,您可以使用
jQuery.getJSON()
函数,这将返回一个javascript对象,这是您想要的。
我认为当前您得到的响应是一个等于“id=12”的字符串——所有HTTP数据都是一个字符串,这就是它的工作方式。
您可以使用一点javascript解析字符串:

<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
       }
    }) 
});

但是,这有点硬编码和丑陋。

您的数据来自哪里?你只是得到了一个
字符串,即“id=12”?在这种情况下,您需要解析字符串。从ancor data-app元素您可以发布您发布到的服务器方法吗?如果它的{“id”:9}i厌倦了this.data.id,那么如何获取它。对于上面的它返回未定义的。您使用另一个jQuery函数吗?Javascript需要
eval
JSON字符串。
var id = parseInt(data.split("=")[1]);