只选择第一个按钮
Choose only the first button
我试图做到这一点,如果你点击是或否,只会发生一次。就像现在一样,如果你第一次点击"否",第二次点击"是",它会执行两次。
function confirm() {
$("#no").one("click", function(){
return false;
});
}
$("#yes").one("click", function () {
//do something
});
感谢的帮助
这两个事件都附加在document.ready中,我认为这意味着除非您另有指定,否则它们将无限期保持活动状态。
以下方法相当基本,只需将变量"hasClicked"设置为false即可。一旦单击其中任何一个,就将"hasClicked"设置为true。每个按钮都有一个if结构,它只执行代码if"hasClicked"为false。
尝试以下操作:
var hasClicked = false;
function confirm(){
$("#no").one("click", function(){
if (!hasClicked){
hasClicked = true;
return false;
}
});
$("#yes").one("click", function () {
if (!hasClicked) {
hasClicked = true;
//do something
}
});
}
由于无法解除与one()
绑定的事件的绑定,请检查此答案
所以你必须这样做:
function confirm() {
$("#no").bind("click", function(){
$(this).unbind(); // prevent other click events
$("#yes").unbind("click"); // prevent yes click event
// Do your stuff
});
}
$("#yes").bind("click", function () {
$(this).unbind();
$("#no").unbind("click");
// Do your stuff
});
为按钮分配一个名为confirmation
的类。基于类设置事件处理程序。阅读按钮的值以决定你想做什么。
$(".confirmation").one("click", function(){
if($(this).val() === 'yes'){
//do something
}else{
return false;
}
}
相关文章:
- 而循环只设置php中输入字段中的第一个值
- 错误:$injector:modulerr模块错误(我的第一个SPA应用程序)
- 单击一次后禁用按钮-第2部分
- IE11中的第二个调用取消了第一个Fetch API调用
- Javascript XMLHttpRequest——只有第一个POST请求有效
- 按下一个HTML按钮,该按钮使用一个功能在同一个新窗口中打开URL
- 使用javascript或angularjs特定过滤器搜索字符串中第一个img标记的json值
- 将OnClick函数设置为<ul>,最后一个ul是擦除第一个ul-s
- RxJS油门行为;立即获取第一个值
- Angular UI网格:如何通过第一个UI网格中的按钮使第二个UI网格可见
- 选择多个实例中的第一个
- 我的设备后退按钮工作不正常,它转到第一个html,但返回到第二个html
- 数据表删除按钮在其他页面上不起作用,除了第一个
- 如何选择这些按钮中的第一个
- 第二个 JS 按钮触发第一个 JS 按钮
- 在表中第一个tr的倒数第二个td中选择按钮-使用jQuery选择器
- .after()当我点击这个按钮后,第二个,而不是第一个
- 如果选项卡是第一个,则禁用previous按钮
- 如果按下按钮,显示从json中获得的第一个X元素
- Javascript -如果没有选中单选按钮,选中第一个