1

我如何制作一个 Javascript,这样当我按下我的提交按钮时,它会将按钮的名称更改为类似“正在加载...”的名称,并在 3 秒后按下按钮

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

它将充当人类的“垃圾邮件过滤器”。

4

2 回答 2

7

一种可能的解决方案是通过以下方式为元素设置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 回答
0

您可以尝试以下解决方案:

<form action="https://google.com" method="post" name="simulation" id="simulation">
    <input type="text" name="nom" id="nom"/>
    <input type="text" name="prenom" id="prenom"/>
    <input type="submit" value"Submit">
</form>
<script>
$("#simulation").on('submit', function (e) {
    console.log("Submitted");
    //stop form submission
    e.preventDefault();
    //Do your custom work.
    setTimeout(function(){ document.getElementById('simulation').submit(); }, 5000);
});
</script>
于 2018-09-17T13:24:01.197 回答