如何在 Javascript 中延迟提交表单

mil*_*lan 6 javascript forms submit delay

我正在尝试在我正在编写的 chrome 扩展中延迟自动提交表单,但它似乎没有提交。下面是我的表单和 javascript:

function submitForm() { // submits form
    document.getElementById("ismForm").submit();
}

if (document.getElementById("ismForm")) {
    setTimeout("submitForm()", 5000); // set timout 
}


<form method="post" id="ismForm" name="ismForm" action="http://www.test.com" class=""> 
<label for="searchBox">Search </label>
<input type="text" id="searchBox" name="q" value=""> <input type="hidden" id="sayTminLength" value="3"><input type="hidden" id="coDomain" value="US"><input class="button" type="submit" id="search.x" name="search.x" value="Search" autocomplete="off"> 
</form>
Run Code Online (Sandbox Code Playgroud)

icy*_*com 3

不知道上下文,但可能页面尚未完全加载 - 您可以尝试放置

if (document.getElementById("ismForm")) {
    setTimeout("submitForm()", 5000); // set timout 
}
Run Code Online (Sandbox Code Playgroud)

在主体 onLoad() 事件中。另一方面,尝试在 setTimeout 之前和 SubmitForm() 开始处放置简单的警报,以确认超时是否首先被触发。