我的页面上有一个按钮。如果用户第二次点击按钮,我不想做任何操作。我有以下代码。但它没有用。有人可以帮忙??
$("#myButton").click(function(){
var count = 0;
count++;
alert("button");
if(count>1)
$('#myButton').prop('disabled', true);
});
<button type="button" id="myButton" > Click Me </button>
这是FIDDLE
答案 0 :(得分:15)
答案 1 :(得分:3)
改变这个......
$("#myButton").click(function(){
var count = 0;
count++;
alert("button");
if(count>1)
$('#myButton').prop('disabled', true);
});
到此......
$("#myButton").one("click", function(){
alert("button");
});
指定一个单击事件处理程序,该处理程序仅在您第一次单击该元素时触发,在本例中为您的按钮。
您可以非常简单地更改现有代码,以使其正常工作......
var count = 0;
$("#myButton").click(function(){
count++;
alert("button");
if(count>0)
$('#myButton').prop('disabled', true);
});
按照您的方式,每次单击按钮时,您都将计数设置为0(并且仅在2次单击后禁用按钮)。
答案 2 :(得分:1)
使用.one()
绑定事件以运行/执行一次。
$("#myButton").one('click',function(){
alert("button");
});
<强> Working Demo 强>
答案 3 :(得分:1)
像这样的事情Fiddle
$("#myButton").click(function(){
alert("button");
$(this).unbind();
});
答案 4 :(得分:0)
使用off()
$("#myButton").click(function(){
var count = 0;
count++;
alert("button");
$(this).off('click');
if(count>1)
$('#myButton').prop('disabled', true);
});
答案 5 :(得分:0)
var clicked = false;
$("#myButton").click(function(){
if(!clicked){
clicked = true;
alert("button");
$('#myButton').prop('disabled', true);
}
});
答案 6 :(得分:0)
您每次点击都会初始化count
var。把它移到外面看看工作
var count = 0;
$("#myButton").click(function(){
count++;
alert("button");
if(count>0)
$('#myButton').prop('disabled', true);
});
答案 7 :(得分:0)
Diasble
按钮
答案 8 :(得分:0)
声明
var count = 0;
在点击功能之外
答案 9 :(得分:0)
检查小提琴 here
var count = 0;
$("#myButton").click(function(){
count++;
alert("button");
if(count>=1)
$('#myButton').prop('disabled', true);
});
每次调用函数时,您的变量都会被初始化,您可以使用变量外部函数。
答案 10 :(得分:0)
我遇到了实际禁用按钮的问题,尤其是在执行表单提交时。因为禁用该按钮会阻止进一步的操作,所以您可能会尝试在单击时向该按钮添加一个类,该类被称为“已禁用”,然后使用新的“已禁用”类的处理程序来防止单击时使用以下内容的默认行为: / p>
$(".my_submit_button").click(function(e){
$(e.target).addClass("disabled");
})
$(".disabled").click(function(e){
e.preventDefault();
});
这应该允许按钮完成第一次点击的任何操作(即使该操作是表单提交),同时仍然禁止任何后续点击。
答案 11 :(得分:-3)
试试这个并且pl避免仅使用“click”而不是使用“on”,下面的代码显示了如何通过其替代操作点击。
$("#myButton").on("click" , function(){
$("#myButton").off("click"); //just off the click event once u click
var count = 0;
count++;
alert("button");
var isBool = count>1;
$('#myButton').prop('disabled', isBool);
});
在此处查看演示:http://jsfiddle.net/7jCwK/13/