JavaScript 中的“提交不是函数”错误

2022-08-30 00:00:53

谁能告诉我这段代码出了什么问题?我试图用JavaScript提交一个表单,但显示错误“.submit不是一个函数”。有关代码的更多详细信息,请参阅下文:

<form action="product.php" method="get" name="frmProduct" id="frmProduct" enctype="multipart/form-data">

<input onclick="submitAction()" id="submit_value" type="button" name="submit_value" value="">

</form>

<script type="text/javascript">
    function submitAction()
    {
        document.frmProduct.submit();
    }
</script>

我也试过这个:

<script type="text/javascript">
    function submitAction()
    {
        document.forms["frmProduct"].submit();
    }
</script>

两者都向我显示相同的错误:(


答案 1

提交不是一个函数

表示您命名了提交按钮或其他元素 。将按钮重命名为,您的呼叫将神奇地工作。submitbtnSubmit

将按钮命名为 submit 时,将覆盖窗体上的函数。submit()


答案 2

如果您没有机会更改,也可以通过以下方式提交表单:name="submit"

function submitForm(form) {
    const submitFormFunction = Object.getPrototypeOf(form).submit;
    submitFormFunction.call(form);
}