Javascript 使用“绑定”实现简单的ajax向上/向下投票功能
我有一个简单的ajax向上/向下投票功能 我想重新绑定这个关于ajax成功的voteClickEvent,呼吁投反对票。我必须在success调用中把它放在一个单独的函数中吗?或者我可以做得更优雅些Javascript 使用“绑定”实现简单的ajax向上/向下投票功能,javascript,jquery,ajax,Javascript,Jquery,Ajax,我有一个简单的ajax向上/向下投票功能 我想重新绑定这个关于ajax成功的voteClickEvent,呼吁投反对票。我必须在success调用中把它放在一个单独的函数中吗?或者我可以做得更优雅些 var voteClickEvent = function() { var upOrDown = $(this).attr('id'); var that = $(this); $.ajax({ type: "POST"
var voteClickEvent = function() {
var upOrDown = $(this).attr('id');
var that = $(this);
$.ajax({
type: "POST",
url: "/wp-admin/admin-ajax.php",
data: {upOrDown: upOrDown, action: "updateVote"},
dataType: "json",
success: function(data) {
console.log(data.output);
that.unbind("click");
that.css("cursor", "default");
if (data.output == "up") {
$("#down").bind("click", voteClickEvent);
} else {
$("#up").bind("click", voteClickEvent);
}
}
});
return false;
}
$("#up, #down").bind("click", voteClickEvent);
@Dinesh没有错误,但是绑定没有成功。看起来它只是在添加另一个单击事件,是否只有在尚未绑定函数时才有绑定?您的代码实际上应该向另一个元素添加第二个单击处理程序。为什么需要绑定两次?@charlietfl是否有办法检查单击事件是否已绑定?所以我只能在这种情况下重新绑定?如果类存在,只在元素上切换一个类而不在click处理程序中执行任何操作会更简单。否则,将两者解开