尝试的js大概如下:都不行

<div class="iteye-blog-content-contain" style="font-size: 14px"></div>
为了解决ie6下 select遮挡div层的问题将select包含在了iframe下,但是js却获取不了这个select了。。。

部分jsp:
<td class="page" colspan="4">
<iframe id="ss1" name="ss1" style="z-index:-1;width:100%;height:290px;border:none">
<select id="sel1" name="sel1"
multiple class="sel" ondblclick="dbInsertOption(this);">
</select>
</iframe>

div和select的内容都是ajax加载的,加上iframe以后,js无法获取select,所以没办法加载查出来的内容,该怎么办?

尝试的js大概如下:
/* var topWin = window.top.document.getElementById("ss1").contentWindow;
var obj = topWin.document.getElementById('sel1');   */
/* var obj = document.getElementById('ss1').contentWindow.document.getElementById("sel1"); */
/* var obj = $("#ss1").contains().find("sel1"); */
/*   var obj = document.getElementById('sel1'); */ 
/* var obj = document.getElementById('ss1').document.getElementsByTagName("select");  */
/*  var obj = window.frames["ss1"].document.getElementById('sel1');  */
/*  var obj = $("select:first"); */
/*  var obj = $("#ss1.sel"); */
/* var obj = $(#sel1).val(); */
var obj = self.frames["ss1"].document.getElementById('sel1');

皈依舞
浏览 149回答 4
4回答

郎朗坤

<iframe id="ss1" name="ss1" style="z-index:-1;width:100%;height:290px;border:none"><select id="sel1" name="sel1"multiple class="sel" ondblclick="dbInsertOption(this);"></select></iframe>这代码有问题。先将iframe标签的用法学会了。<iframe src="http://www.baidu.com" width="20%" height="50%"><!-- 此处不要放任何东西--></iframe>

慕尼黑8549860

可以使用已经封装好的弹出窗。像jquery-ui中的dialog,针对于ie6,有用代码进行处理过,具体的方法还是先使用了一个frame来遮盖,再放置弹出层(不在FRAME中)。

饮歌长啸

:在iframe中添加代码其他标签?这是个不好的习惯吧,iframe是用来干啥的?创建包含另外一个文档的内联框架(即行内框架),等于你放入iframe之中的东西与你当前页面的东西不在一个域中,你应该去查询怎么解决跨域的问题,跨域的情况下,子页面的可以获取到顶级标签,完全可以换种思维去考虑问题,或者不用iframe

米脂

1、'为了解决ie6下 select遮挡div层的问题将select包含在了iframe下'这个解决办法本身有问题,应该是调样式(css)来解决的。2、要想获取iframe下的元素,得先获取iframe,因为iframe是另外一个window对象了。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript