1

送信ボタンが機能をトリガーするフォームがあります。それを呼びましょうmyFunction()。送信後30秒間この機能を無効にする必要がありますが、引き続き機能するには送信ボタンが必要です。ボタン全体を無効にしたくはありません。ボタンがトリガーする機能だけを無効にします。(ユーザーが30秒前にもう一度ボタンを押すと、もう一度送信する必要がありますがmyFunction、2回目に実行する必要はありません。)私は何百万ものさまざまなことを試しましたが、役に立ちませんでした。例としてどのコードを投稿すればよいかさえわかりません。

<FORM ID="myform">
    <INPUT ID="mysubmit" TYPE="SUBMIT" ONCLICK="myFunction();">
</FORM>

JavaScriptを使用してこれを行う最も簡単で簡単な方法は何ですか?

4

2 に答える 2

1

もしかして:

setTimeout(myFuction, 30000) // wait for 30 seconds and then call function
于 2012-06-25T16:54:43.377 に答える
1
<FORM ID="myform">
<INPUT ID="mysubmit" TYPE="SUBMIT" onClick="myFuction2();">
</FORM>


function myFuction() {
    ...
}

function myFuction2() {
    toggleSubmit();
    setTimeout("toggleSubmit", 30000);
    myFuction();
}

function toggleSubmit() {
    if (document.getElementById('mysubmit').onclick == null) {
        document.getElementById('mysubmit').onclick = myFuction2;
    } else {
        document.getElementById('mysubmit').onclick = null;
    } 
}
于 2012-06-25T16:57:26.753 に答える