在下面的代码中,如果我有行hackButton.type ='hidden',我的表单会被提交(这就是我想要的),但我不想隐藏按钮。我有什么选择?我无法将其更改为“提交”或“按钮”,因为它们不起作用。
var hackButton = document.loginform.submit_login;
hackButton.type='button';
var listener =
hackButton.addEventListener('click', function() {
//do things here before form submission
hackButton.type='hidden';
setTimeout("document.loginform.submit()", 3000);
}, true);
答案 0 :(得分:1)
尝试setTimeout("document.loginform.submit", 3000);
或setTimeout(document.loginform.submit, 3000);
甚至setTimeout(function() { document.loginform.submit() }, 3000);
答案 1 :(得分:1)
您应该更改逻辑,因为无需在按钮上单击即可提交表单。你可以设置一个标志:
(function() {
var processed = false;
var form = document.getElementById('formID');
form.onsubmit = function() {
if(!processed) {
doStuff();
processed = true;
form.submit();
return false;
}
};
}());
然后使用普通的可见提交按钮。