【问题标题】:$('#formId')[0] not working in IE9$('#formId')[0] 在 IE9 中不起作用
【发布时间】:2013-11-06 05:50:38
【问题描述】:

我有一个 ID 为 formId 的表单。在 JS 中,访问表单时使用

$('#formId')[0]

它在 Firefox 和 Chrome 中运行。但在 IE 中它不起作用。

如果我在 IE 中使用

$('#formId')

它可以工作,但不能在 Firefox 或 Chrome 中工作。

有什么方法可以让我在所有浏览器中访问表单吗?

【问题讨论】:

  • jQuery 的哪个版本?
  • 我们可以看看你的代码吗?或许贴一个jsfiddle 来证明这个问题?
  • 用它来做什么?发布您的代码...
  • jquery 版本为 1.9.2。
  • 你用它做什么? $('#formId')[0] 应该给你一个 DOM 节点,而 $('#formId') 应该给你一个包装该 DOM 节点的 jQuery 对象。

标签: javascript jquery html forms cross-browser


【解决方案1】:

$('#formId') 可以。你不需要使用[0]

ID 必须是唯一的。

阅读Two HTML elements with same id attribute: How bad is it really?

更新

正如Quentin评论的那样

如果你想要 DOM 节点而不是 jQuery 对象,你确实需要 [0]

【讨论】:

  • 这与拥有多个具有相同 ID 的元素无关。区别在于是否需要 DOM 节点或 jQuery 对象。
猜你喜欢
  • 1970-01-01
  • 2012-03-05
  • 2018-04-29
  • 2012-02-09
  • 2012-08-02
  • 2014-05-04
  • 2011-07-29
  • 2015-10-08
  • 2013-10-29
相关资源
最近更新 更多