Javascript JQuery使用不同的类单击相同的按钮
我有一个类名为的按钮test button test button——检查。单击测试按钮后--检查它应该做些什么,并被class测试按钮替换--重置 对于测试按钮--reset我想编写另一个函数,但它不起作用。因为,前面的函数会再次执行Javascript JQuery使用不同的类单击相同的按钮,javascript,jquery,button,click,Javascript,Jquery,Button,Click,我有一个类名为的按钮test button test button——检查。单击测试按钮后--检查它应该做些什么,并被class测试按钮替换--重置 对于测试按钮--reset我想编写另一个函数,但它不起作用。因为,前面的函数会再次执行 $(".test-button--check").on("click", function() { alert("Check is clicked"); $(this).removeClass("test-button--check").addClass
$(".test-button--check").on("click", function() {
alert("Check is clicked");
$(this).removeClass("test-button--check").addClass("test-button--reset");
});
$(".test-button--reset").on("click", function() {
alert("Reset is clicked");
$(this).removeClass("test-button--reset").addClass("test-button--check");
});
我能做什么
感谢您尝试使用.off()删除事件处理程序,在本例中,它是单击
应该是这样的:
$('.test-button.test-button--reset').off().click(function() {...});
您可以用这种方式在document.ready中编写代码
$(".test-button--check .test-button--reset").on("click", function(e) {
e.preventDefault();
var obj=$(this);
if($(obj).hasClass('test-button--check')){
alert("Check is clicked");
$(this).removeClass("test-button--check").addClass("test-button--reset");
}
if($(obj).hasClass('test-button--reset')){
alert("Reset is clicked");
$(this).removeClass("test-button--reset").addClass("test-button--check");
}
});
我认为这会奏效:
var check = function checkFunc() {
alert('Check is clicked!');
$(this).addClass('test-button--reset').removeClass('test-button--check');
$('.test-button--reset').unbind('click',check);
$('.test-button--reset').bind('click',reset);
}
var reset = function resetFunc() {
alert('Reset is clicked!');
$(this).addClass('test-button--check').removeClass('test-button--reset');
$('.test-button--check').unbind('click',reset);
$('.test-button--check').bind('click',check);
}
$('.test-button--check').bind('click',check);
使用绑定和取消绑定请为您的问题添加一些代码-然后我们可能会告诉您为什么它不起作用!