【问题标题】:getElementsByName does not work inside nested HTML [duplicate]getElementsByName 在嵌套的 HTML 中不起作用 [重复]
【发布时间】:2018-12-22 06:40:36
【问题描述】:

我正在尝试使用 document.getElementsByName 检索数据,但如果我的元素位于嵌套的 HTML 文档中,该函数将返回空。我不确定这是否是原因,但事实是在嵌套 HTML 之前,该函数可以正常工作。

这里是一个简化:

<html>
  ...
   <iframe name="contentFrame"> // getElementsByName can find this element
      <html>
         ...
           <input name="ship_no">   // getElementsByName  returns empty
         ...
      </html>
  ...
 </html>

我进行了一些搜索,但找不到任何相关内容。谁能想到这个问题的解决方法?

【问题讨论】:

标签: html getelementsbyname


【解决方案1】:

iframe 被视为与当前文档不同的文档。

先获取iframe,再获取iframecontentDocument

var iframe = document.getElementById('iframeId');
var innerDoc = iframe.contentDocument || iframe.contentWindow.document;

然后您可以致电innerDoc.getElementsByName

【讨论】:

    猜你喜欢
    • 2014-07-24
    • 2011-02-28
    • 2023-03-31
    • 2015-12-02
    • 2017-01-11
    • 2013-04-05
    • 2015-10-03
    • 2018-02-28
    • 2018-04-22
    相关资源
    最近更新 更多