Internet Explorer-Javascript提交错误

Internet Explorer-Javascript提交错误,javascript,internet-explorer,Javascript,Internet Explorer,我有使用javascript的带有提交按钮的表单。代码如下所示: <form action="settings.php" method="post" id="myform" class="forms"> ...some form fields here <button type="submit" name="submit_ok" value="Save" onClick="document.myform.submit();">Save</button> …

我有使用javascript的带有提交按钮的表单。代码如下所示:

<form action="settings.php" method="post" id="myform" class="forms">
...some form fields here
<button type="submit" name="submit_ok" value="Save" onClick="document.myform.submit();">Save</button>

…这里有一些表单字段
拯救
但是,IE 10(Win7 x64)在尝试提交表单时显示此错误:

“无法获取未定义或空引用的属性提交”

所有其他浏览器都不会显示任何错误。如果当IE询问我是否要继续运行此页面上的脚本时,我单击“是”,则一切正常,但我需要删除此错误

  • 所有表单控件(如按钮、输入等)都有一个引用父元素的属性
    form
    。因此,您可以使用

    this.form.submit();
    
  • 为什么还要这样做呢?“提交”按钮的默认操作将提交表单

  • IE可能在遍历
    文档
    对象时按名称查找元素。您的表单没有
    名称
    属性

  • 所有表单控件(如按钮、输入等)都有一个引用父元素的属性
    form
    。因此,您可以使用

    this.form.submit();
    
  • 为什么还要这样做呢?“提交”按钮的默认操作将提交表单

  • IE可能在遍历
    文档
    对象时按名称查找元素。您的表单没有
    名称
    属性

  • 所有表单控件(如按钮、输入等)都有一个引用父元素的属性
    form
    。因此,您可以使用

    this.form.submit();
    
  • 为什么还要这样做呢?“提交”按钮的默认操作将提交表单

  • IE可能在遍历
    文档
    对象时按名称查找元素。您的表单没有
    名称
    属性

  • 所有表单控件(如按钮、输入等)都有一个引用父元素的属性
    form
    。因此,您可以使用

    this.form.submit();
    
  • 为什么还要这样做呢?“提交”按钮的默认操作将提交表单

  • IE可能在遍历
    文档
    对象时按名称查找元素。您的表单没有
    名称
    属性



  • 谢谢,成功了。是的,我知道默认操作是提交,但是有更多的onClick事件和其他按钮(它们做不同的事情而不是提交表单),所以我也可以将此解决方案应用于其他按钮。谢谢,这很有效。是的,我知道默认操作是提交,但是有更多的onClick事件和其他按钮(它们做不同的事情而不是提交表单),所以我也可以将此解决方案应用于其他按钮。谢谢,这很有效。是的,我知道默认操作是提交,但是有更多的onClick事件和其他按钮(它们做不同的事情而不是提交表单),所以我也可以将此解决方案应用于其他按钮。谢谢,这很有效。是的,我知道默认操作是提交,但是有更多的onClick事件和其他按钮(它们做不同的事情而不是提交表单),因此我也可以将此解决方案应用于其他按钮。它是一个提交按钮,为什么在默认情况下按钮会触发提交?删除onclick,表单就可以了。此外,很少需要给提交按钮起一个名字,很容易将其称为“提交”…-(epascarello,如我所说,有更多的onclick事件和其他按钮(它们做不同的事情而不是提交表单),因此我要求将此解决方案也应用于其他按钮。@RobG命名提交按钮的主要原因是当您有多个按钮时。您怎么知道(服务器端)哪一个被按下了?@Phil当然,但这似乎不是一个常见的要求。这是一个提交按钮,为什么在默认情况下按钮会触发提交?删除onclick,表单就会这样做。此外,很少需要给提交按钮起一个名称,这很容易让人称之为“提交”…:-(正如我所说,有更多的onClick事件与其他按钮(它们做不同的事情而不是提交表单)一起出现,因此我要求将此解决方案也应用于其他按钮。@RobG命名提交按钮的主要原因是当您有多个按钮时。否则您怎么知道(服务器端)哪一个被按下了?@Phil当然,但这似乎不是一个常见的要求。这是一个提交按钮,为什么在默认情况下按钮会触发提交?删除onclick,表单就会这样做。此外,很少需要给提交按钮起一个名称,这很容易让人称之为“提交”…:-(正如我所说,有更多的onClick事件与其他按钮(它们做不同的事情而不是提交表单)一起出现,因此我要求将此解决方案也应用于其他按钮。@RobG命名提交按钮的主要原因是当您有多个按钮时。否则您怎么知道(服务器端)哪一个被按下了?@Phil当然,但这似乎不是一个常见的要求。这是一个提交按钮,为什么在默认情况下按钮会触发提交?删除onclick,表单就会这样做。此外,很少需要给提交按钮起一个名称,这很容易让人称之为“提交”…:-(正如我所说,有更多的onClick事件与其他按钮(它们做不同的事情而不是提交表单)一起出现,因此我要求将此解决方案也应用于其他按钮。@RobG命名提交按钮的主要原因是当您有多个按钮时。否则您怎么知道(服务器端)“哪一个被按下了?”菲尔当然,但这似乎不是一个常见的要求。