[英]Triggering onclick event of Input/Form
<form method="POST" onsubmit="return false;">
...
<input type="submit" name="button" value="Login" onclick="require('file.js').submitForm(this.form);">
...
</form>
如何使用JavaScript在Internet Explorer 9中触发此INPUT元素的onclick事件(以便它可以提交表单)? 我试过了:
document.getElementsByName("button")[0].click()
和
document.getElementsByName("button")[0].onclick()
但都行不通。
(document.getElementsByName(“ button”)。length = 1)
您可以使用
document.getElementsByTagName("form").submit();
对于点击事件,您可以使用此
element = document.getElementsByName("button")[0]
if (typeof element.onclick == "function") {
element.onclick.apply(element);
}
超越问题的范围,我相信您正在尝试触发表单发布并使用一些客户端逻辑来处理提交。
您拥有的代码可防止由于“ return false;”而导致表单无法发布。 单击该按钮时,它将触发Submit事件,该事件被阻止。 那么,在知道结果相同的情况下,您如何知道按钮是否被触发?
为了简化编码逻辑,请将JavaScript调用放在form标签或按钮中,但不要同时放在两者中。 我的建议是离开按钮。 type =“ submit”表示它将提交表单。 表单本身具有JavaScript函数,该函数决定是否发布。
<form method="POST" onsubmit="return prepost();">
...
<input type="submit" value="Submit">
</form>
<script>
function prepost(){
// if the form needs to be stopped
return false;
// if the form needs to be posted
return true;
}
</script>
答:如果我将某些字段留空,则表单未提交。 当我在正确的字段中输入正确的值时,它使用上述click()方法正确提交了。 谢谢大家的回答。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.