use*_*429 1 html javascript jquery
我有此表单,其中包含在发布数据之前警告验证错误的条件。问题是如果有人双击(可能是由于错误),则提交了表单,然后在第一次单击时清除了表单,然后第二次单击将提示“表单为空”,这可能会造成混淆,因为这一切都是在一瞬间发生的。所以我想要的是在单击3秒钟后暂时禁用该按钮。但是我现在刚刚使整个功能超时3秒钟,而不仅仅是禁用按钮。我应该怎么做?这是表格的简化版。谢谢
$('#send').click(function(){
var self = $('#send');
setTimeout(function() {
self.disabled = false;
if(!$('#text').val()){
alert('field empty');
}else{
$('#message').html('done');
$('#text').val('');
}
}, 3000);
});
Run Code Online (Sandbox Code Playgroud)
我为您编写了一个小示例,即禁用单击按钮。超时将在3000毫秒后启用按钮。
的HTML:
<input id="text">
<input id="send" type="button" value="send"/>
<div id="message"></div>
Run Code Online (Sandbox Code Playgroud)
Javascript:
$('#send').click(function(){
var button = $(this);
button.attr('disabled', 'disabled');
setTimeout(function() {
button.removeAttr('disabled');
},3000);
if(!$('#text').val()){
alert('field empty');
button.removeAttr('disabled');
}else{
$('#message').html('done');
$('#text').val('');
}
});
Run Code Online (Sandbox Code Playgroud)