gpt4 book ai didi

jquery - 如何向 Ajax 回调添加其他参数?

转载 作者:行者123 更新时间:2023-12-01 01:00:53 24 4
gpt4 key购买 nike

我想我可能已经这样做了......不是最好的方式。但它正在工作,并且结果返回到我的 data 对象中。现在我需要传递一些额外的参数。如何使用附加参数调用 handleData()?我试过这个:

handleData({'likes' : true})

但这会删除从 Ajax 调用返回的 data 对象。

这是我的代码:

// My global Ajax function to 'set' data
$.fn.setData = function(url, params){
return $.ajax({
url: site_url + url,
type: "POST",
dataType: 'json',
data: params
});
}

function registerLike() {
var like = $('.interaction .like')
var status = $(like).data('status');
var count = $(like).data('count');

like.click(function(){
if(!liked){
// I need to pass adition parameters here
like.setData('action/like', {'id' : id}).done(handleData());
} else {
// and here
like.setData('action/unlike', {'id' : id}).done(handleData());
}
});

function handleData(data){
if(data.success) {

if(data.likes){
count = count+1;
liked = 1;
} else {
if(count > 0) {
count = count-1;
} else {
count = 0;
}
liked = 0;
}

$('.interaction .like .icon').toggleClass('el-icon-heart');
$('.like-count').html(count);
}
}
}

最佳答案

您始终可以使用匿名函数创建包装器:

like.setData('action/unlike', {'id' : id}).done(function(response){
myCallback(response, extraData);
});

关于jquery - 如何向 Ajax 回调添加其他参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25147537/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com