:有一个像这样的ajax请求:
$.ajax({
url: "/users/action/",
type: "POST",
data: myData,
context: this,
error: function () {},
success : function () {
$(this).removeClass('disabled');
}
});
因此,如果函数成功,则删除“禁用”类。但是,我的函数返回以下json:
{"row":"fze684fz6f4ez68f4ze"}
我想得到这个值所以我以后可以使用它“将它添加到数据元素,即我想添加到点击的元素data-row =”fze684fz6f4ez68f4ze“
我该如何管理?我不知道自己,我发现了AJAX。
非常感谢你的帮助!
答案 0 :(得分:8)
如果您希望获得json,建议设置dataType
。
任何方式都要注意上下文。这可能是this
的问题。
$.ajax({
url: "/users/action/",
type: "POST",
data: myData,
context: this,
error: function () {},
dataType: 'json',
success : function (response) {
$(this).removeClass('disabled');
$(this).data("row",response.row);
}
});
答案 1 :(得分:3)
正如文档明确指出的那样,jQuery将服务器的响应作为success
回调的第一个参数传递:
success : function (response) {
console.log(response);
}
答案 2 :(得分:2)
您可以使用jQuery.data( element, key )将返回的响应中的行分配给元素
$('selector').data('row', reseponse.row);
如果你知道元素的id
,你可以使用id选择器$('#elementId').data('row', response.row);
您可以阅读有关选择器here的更多信息。
您的代码将是
$.ajax({
url: "/users/action/",
type: "POST",
data: myData,
context: this,
error: function () {},
success : function () {
$(this).removeClass('disabled');
$('#elementId').data('row', response.row);
}
});