未捕获的TypeError:document.getElementById(...)。submit不是函数

时间:2015-09-12 01:18:46

标签: javascript html forms submit

为什么以下代码无效?

<html>
<body>
<form id="myForm" action="http://example.com" method="POST">
<input type="text" name="engine" value="v2.5" />
<input type="text" name="verify" value="2" />
<input type="text" name="submit" value="Save" />
</form>
<script type="text/javascript">
document.getElementById("myForm").submit();
</script>
</body>
</html>

我收到以下错误:

Uncaught TypeError: document.getElementById(...).submit is not a function

感谢。

我想通过表单发送名为submit的POST参数,如何自动完成?

4 个答案:

答案 0 :(得分:7)

null是对myForm.submit的文字输入的引用:

name="submit"

将名称更改为&#34;提交&#34;。

以外的名称

答案 1 :(得分:1)

由于您输入的名称为submit,请尝试使用以下行:

document.getElementById("myForm").submit.click();

答案 2 :(得分:0)

<input type="text" name="submit" value="Save" />重命名为submit以外的其他内容,它应该有效。

这是因为您可以使用Javascript中的对象表示法访问表单值,因此通过调用submit(),您尝试将submit字段作为函数执行。

但是,您的问题是如何发送名为submit的POST参数。您可能需要查看XMLHttpRequest,如下所示:

xmlhttp.open("POST", "http://example.com", true);
xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xmlhttp.send("engine=v2.5&verify=2&submit=Save");

答案 3 :(得分:-1)

转到“提交”按钮并检查您是否输入了id =提交EX: 如果您的ID已提交,则应将其更改为其他ID