怎么获取iframe里的一个id值?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么获取iframe里的一个id值?相关的知识,希望对你有一定的参考价值。

类似这样的<iframe src="网址"></iframe>
能用document.frames["fra"].document.getElementById("id").value;获取值吗?
事后可有报酬。谢了!

参考技术A 先给你的iframe添加一个类,这样:

<iframe class=”test“ src="网址"></iframe>

然后在你的父页面里找到这个iframe的节点:

var iframeEl = document.querySelector('.test');

然后获取该 iframe 的 document 对象:

var iframeDoc = iframeEl.contentWindow.document

之后就可以操作 iframe 里面的元素了,比如获取 iframe 里 class 为 ”temp" 的节点

var node = iframeDoc.querySelector('.temp');追问

谢谢!有点疑问,获取该 iframe 的 document 对象。var iframeDoc = iframeEl.contentWindow.document.getElementById('id');是这样吗?
然后通过var node = iframeDoc.querySelector('.temp');的node.value就得到那个id的值吗?还是?

使用jquery获取iframe内的元素属性

当需要获取iframe里的内容时需要有几个前提,否则你是获取不到的;

1:当前页面与iframe的src的页面需要在同一个域名下;

2:必须要等iframe里边的页面加载完成才能获取,否则你要获取的标签就是不存在;

当这两个条件都满足的时候你就可以获取了(以下例子是本精灵通过jquery修改iframe("

iframe的ID名被取为了iframeName‘")里页面的所有a标签的target属性值):

function a_load(){
 var isOnLoad = true;
 $(‘#iframe‘).load(function() {
  isOnLoad = false;// 加载完成  
  var a_len = $($(‘#iframeName‘).prop(‘contentWindow‘).document).find("a").length;
  for(var i = 0;i<a_len;i++){
   $($(‘#iframe‘).prop(‘contentWindow‘).document).find("a").eq(i).attr("target","_self");
  }
 });
}

以上是关于怎么获取iframe里的一个id值?的主要内容,如果未能解决你的问题,请参考以下文章

javascript 怎么获得iframe里的网页的地址

使用jquery获取iframe内的元素属性

jquery怎么获取当前页面iframe的id

如何用js控制iframe里body的背景属性

jquery怎么获取当前页面iframe的id?

如何获取iframe的父窗口的body标签啊