2016-04-09 44 views
2
<script>function lockoutSubmit(button) { 
    var oldValue = button.value; 

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

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

因此,這是我用於禁用(在這裏找到堆棧溢出)的腳本。禁用提交,但首先提交表格

這是我的更新狀態:

<?php 
    if(isset($_POST['coin'])){ 

     $coin="UPDATE users SET coins = coins + 100 WHERE user_id = '$user_id'"; 

     $coin_in=mysqli_query($conn,$coin); 
    }?> 

這裏是我添加onclick輸入:

<form action="" method="post"> 
<input type="submit" value="Get Coins" name="coin" onclick="lockoutSubmit(this)" > 
</form> 

這個腳本點擊它,這是我想要的,但問題是後禁用該按鈕,當我從if條件將onclick添加到輸入UPDATE時,它不起作用。基本上,當我點擊提交時,什麼都不會發生,它只會禁用它。我是JavaScript新手,不知道是否可以像這樣組合...任何想法/提示?

回答

1

如果您返回false到onclick它不會提交表單。

因此,只需添加一個return false鎖定提交()和延遲後手動提交document.getElementById("myForm").submit();

+0

TNX很多隊友! – virtuon92

+0

Zigri2612

0

你可以這樣做也

<form name="myform" action="formaction" method="post"> 

<input type="submit" value="Get Coins" name="coin" onclick="document.forms['myform'].submit();lockoutSubmit(this)" /> </form> 

或者,如果你知道CSS可以使錨按鈕

<a="JavaScript: document.forms['myform'].submit()" on click="lockoutSubmit(this);" />