1

送信ボタンを押すと、ボタンの名前が「読み込み中...」のような名前に変更され、3秒後にボタンが押されるようにするJavascriptを作成するにはどうすればよいですか

<input type="Submit" name="submitNew" id="submitNew" value="Send">

人間の「スパムフィルター」として機能します。

4

2 に答える 2

7

考えられる解決策の 1 つは、次の方法で要素のsubmitイベントを設定することです。form

HTML:

<form onsubmit="return formSubmit(this);">

JavaScript:

function formSubmit(form) {
    document.getElementById("submitNew").value = "Loading...";
    setTimeout(function() {
        form.submit();
    }, 3000);  // 3 seconds
    return false;
}

別の方法は、イベントを動的に設定することです (子猫へのオマージュ! ):

window.onload = function() {
    document.getElementById("formID").onsubmit = function() {
        var form = this;
        document.getElementById("submitNew").value = "Loading...";
        setTimeout(function() {
            form.submit();
        }, 3000); // 3 seconds
        return false;
    };
};​

デモ: http://jsfiddle.net/spWDk/

于 2012-11-30T22:07:59.877 に答える