如果使用onclick事件+ javascript,则不提交表单

时间:2015-12-03 04:56:26

标签: javascript html forms

我希望在可点击之前禁用提交按钮5秒钟。该脚本工作并使按钮不可点击5秒,但问题是它没有提交表单。

请帮忙。

<form id="frm_wanted_search">
<input type="submit" onclick="lockoutSubmit(this)" name="school_name" id="btn_book_search" value="Search">
</form>

<script>
function lockoutSubmit(button) {
var oldValue = button.value;

button.setAttribute('disabled', true);
button.value = '...processing...';

setTimeout(function(){
    button.value = oldValue;
    button.removeAttribute('disabled');
 }, 5000) }
</script>

2 个答案:

答案 0 :(得分:0)

尝试以下代码

<form name ="form1" id="frm_wanted_search">
<input type="submit" onclick="lockoutSubmit(this)" name="school_name" id="btn_book_search" value="Search">
</form>

<script>
function lockoutSubmit(button) {

event.preventDefault();
var oldValue = button.value;

button.value = '...processing...';

setTimeout(function(){
button.value = oldValue;


document.form1.submit();
 }, 5000) 
}
</script>

答案 1 :(得分:0)

试试这个,我的想法是你绑定页面加载事件,在按钮上做一些东西,然后触发一个计时器。

&#13;
&#13;
window.onload = disableButton;

var button = document.getElementById("btn_book_search");
var oldValue = button.value;

function disableButton() {  
  button.value = '...processing...';
  button.disabled = true;
  setTimeout(function(){
    button.value = oldValue;
    button.removeAttribute('disabled');
 }, 5000);
}
&#13;
<form id="frm_wanted_search">
<input type="submit" name="school_name" id="btn_book_search" value="Search">
</form>
&#13;
&#13;
&#13;