Javascript document.forms.gallery\u form.submit不是一个函数

Javascript document.forms.gallery\u form.submit不是一个函数,javascript,Javascript,我发誓,我已经在另一页上找到了这个东西。我真是个傻瓜,真尴尬 function delete_gallery() { var gallery = document.getElementById('gallery_id').value; var form = document.getElementById('gallery_form'); form.setAttribute('action', 'index.php?action=delete&section=gal

我发誓,我已经在另一页上找到了这个东西。我真是个傻瓜,真尴尬

function delete_gallery() {
    var gallery = document.getElementById('gallery_id').value;
    var form = document.getElementById('gallery_form');
    form.setAttribute('action', 'index.php?action=delete&section=galleries&id='+gallery);
    document.forms['gallery_form'].submit();
}
检查元素表明它正在正确更新操作:

<form method="post" action="index.php?action=delete&amp;section=galleries&amp;id=12" name="gallery_form" id="gallery_form"><input type="hidden" value="12" id="gallery_id" name="gallery_id"><p>Name: <input type="text" name="name" value="Woo"></p><p>Description:<br><textarea name="description">Dee</textarea><input type="hidden" value="2" name="artist"></p><p><input type="submit" value="Submit" name="submit">
    </p></form>
名称:

描述:
Dee

这是我用来调用函数的按钮,它位于表单下方的表格中:

<button onclick="delete_gallery()" type="button">Delete Gallery</button>
删除库
编辑:


我应该提到我首先尝试使用getElementById方法,ala forms.submit();-我遇到了相同的错误,这就是为什么我改为使用document.forms[]的原因。

尝试使用
getElementById

document.getElementById('gallery_form').submit();
由于您已经有了该表格的参考资料,请提交:

function delete_gallery() {
    var gallery = document.getElementById('gallery_id').value;
    var form = document.getElementById('gallery_form');
    form.setAttribute('action', 'index.php?action=delete&section=galleries&id='+gallery);
    form.submit();
}

尝试使用
getElementById

document.getElementById('gallery_form').submit();
由于您已经有了该表格的参考资料,请提交:

function delete_gallery() {
    var gallery = document.getElementById('gallery_id').value;
    var form = document.getElementById('gallery_form');
    form.setAttribute('action', 'index.php?action=delete&section=galleries&id='+gallery);
    form.submit();
}

这可能是因为表单中的这一点-

<input type="submit" value="Submit" name="submit">


正在使用此输入重新定义
form.submit
。只需将名称从
submit
更改为其他名称,如
submit1
,然后看看是否有效

这可能是因为表单内部的这一点-

<input type="submit" value="Submit" name="submit">


正在使用此输入重新定义
form.submit
。只需将名称从
submit
更改为其他名称,如
submit1
,然后看看是否有效

啊,我应该说我也试过了。当这不起作用时,我改用我的方式,因为所有的教程都是这样做的。啊,我应该提到我也试过了。当这不起作用时,我改用我的方式,因为所有的教程都是这样做的。我不会窃取您的伟大发现,因此,如果更改submit按钮的名称太麻烦(虽然它不应该太麻烦),那么下面介绍如何调用form.submit:
HTMLFormElement.prototype.submit.call(document.getElementById('gallery_form')哇。我永远也猜不到。从现在起,我肯定会更具创造性地命名我的按钮。Safari的web inspector同意你的看法。我不会窃取您的伟大发现,因此,如果更改submit按钮的名称太麻烦(虽然它不应该太麻烦),那么下面介绍如何调用form.submit:
HTMLFormElement.prototype.submit.call(document.getElementById('gallery_form')哇。我永远也猜不到。从现在起,我肯定会开始更具创造性地命名我的按钮。