internet explorer-Javascript表单提交:Object dos'不支持此属性或方法(IE

internet explorer - Javascript form submit: Object doesn't support this property or method (IE7)

本文关键字:属性 不支持 方法 IE 表单提交 explorer-Javascript Object dos internet      更新时间:2023-09-26

我正在尝试用javascript提交一个表单。Firefox运行良好,但IE在这个函数的提交行抱怨"Object不支持这个属性或方法":

function submitPGV(formName, action)
{
    var gvString = "";
    pgVisibilities.each(function(pair) {
        gvString += pair.key + ":" + pair.value + ",";
    });
    $('pgv_input').value = gvString;
    var form = $(formName);
    form.action = action;
    form.submit();
}

此处调用:

<a href="javascript:submitPGV('ProductGroupVisibility','config/productgroupvis/save')">

这是表格:

<form id="ProductGroupVisibility" action="save" method="post">
    <input type="hidden" name="ows_gv..PGV" id="pgv_input" value=""/>
</form>

有什么想法吗?

您的<input type="submit">有什么name

如果您将其称为"submit",那么您已经重写了form.submit()函数,这与名为"foo"的输入生成form.foo属性的方式非常相似。这可以解释这种行为。

尝试检查IE选择的元素类型:

// For getting element with id you must use # 
alert( typeof( $( '#ProductGroupVisibility' )));

IE在表单之前选择的具有该ID的页面上可能还有其他内容。

注意表单中name="submit"的任何输入,它们会破坏javascript.submit()功能!

您使用的是什么javascript框架?如果是jQuery,我想你需要在你的id:中添加#

$('#ProductGroupVisibility').submit();

您确定已加载JavaScript库吗?(jQuery或原型)

它在IE7和Prototype中对我有效。

尝试:

alert($('ProductGroupVisibility').id)

看看是否出现错误。