Javascript 如何防止按钮的后续单击事件?
我有一个按钮Javascript 如何防止按钮的后续单击事件?,javascript,jquery-ui,jquery,Javascript,Jquery Ui,Jquery,我有一个按钮btnAdvSearch,当第一次单击它时,显示的日历会卡住。所以我需要防止按钮的进一步点击 我的代码: $('<button id="btnAdvSearch_' + uniqueNum + '" class="" title="Advanced Search"><span class="ui-button-text">' + btnTitle + '</span></button>')
btnAdvSearch
,当第一次单击它时,显示的日历会卡住。所以我需要防止按钮的进一步点击
我的代码:
$('<button id="btnAdvSearch_' + uniqueNum + '" class="" title="Advanced Search"><span class="ui-button-text">' + btnTitle + '</span></button>')
.appendTo($('<div class="ui-dialog-buttonpane buttonHolder" id="buttonHolder_' + uniqueNum + '"></div>')
.appendTo(this.element))
.click(function (e) {
debugger;
e.preventDefault();
e.stopPropagation();
self._validateSearchForm();
//Check the form validation using jquery validation engine
$('#frmAdvSearch_' + uniqueNum + '').validationEngine('validate') == true ? self._submitAdvancedSearchQuery(self) : "";
});
$(''+btnTitle+'')
.appendTo($('')
.appendTo(this.element))
。单击(功能(e){
调试器;
e、 预防默认值();
e、 停止传播();
self._validateSearchForm();
//使用jquery验证引擎检查表单验证
$(“#frmAdvSearch”+uniqueNum+”).validationEngine('validate')==true?self._submitavancedsearchQuery(self):“”;
});
Do
或
所以当他第一次点击时,按钮进入禁用模式
如果验证失败,不要忘记启用它。
或
所以当他第一次点击时,按钮进入禁用模式
如果验证失败,请不要忘记启用它。这是一个按钮,您可以单击任意次数。只需阻止默认操作或在第一次单击后禁用它 因此,在“.click(function(e){”之后更改脚本,如下所示:
.one('click', function (event) {
event.preventDefault();
//do something
$(this).prop('disabled', true);
});
请查看。这是一个按钮,您可以按任意次数单击它。只需阻止默认操作或在第一次单击后禁用它即可 因此,在“.click(function(e){”之后更改脚本,如下所示:
.one('click', function (event) {
event.preventDefault();
//do something
$(this).prop('disabled', true);
});
请看一看。试试
$(this.prop('disabled',true);
而不是e.stopPropagation();
试试$(this.prop('disabled',true);
而不是e.stopPropagation();
$(this.prop('disabled',true);this.disabled=true
$(this.prop('disabled',true);是提升的方法,甚至只是this.disabled=true
@FC”:使用.one()每个元素最多执行一次处理程序
。因此它对dblclick
也非常有效。您确定他只想使用该事件一次吗?我不知道他的意思是像两次快速单击一样双击,还是仅仅两次普通单击,在页面中只执行一次。@FC”:使用.one()每个元素最多执行一次处理程序
。因此它也适用于dblclick
。你确定他只想使用该事件一次吗?我不知道他的意思是像两次快速单击一样双击,还是仅仅两次普通单击,在页面中仅一次。
.one('click', function (event) {
event.preventDefault();
//do something
$(this).prop('disabled', true);
});