easyui 父页面能否获取到子页面元素再.combobox()?

Mika1995 2018-03-20 03:34:15
一个easyui dialog加载的iframe页面,能否在父页面获取到子页面的元素,然后再使用
.combobox(),使子页面加载出下拉框
...全文
408 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Mika1995 2018-03-21
  • 打赏
  • 举报
回复
引用 7 楼 showbo 的回复:
href加载的不是iframe。。直接初始化就行了。。浪费时间搞那么久,怎么加载的你都emi说清楚

我在浏览器F12看了呀,jsp页面是嵌入在iframe里面的,有个这个dialog里面有这个属性
Go 旅城通票 2018-03-21
  • 打赏
  • 举报
回复
href加载的不是iframe。。直接初始化就行了。。浪费时间搞那么久,怎么加载的你都emi说清楚
Mika1995 2018-03-21
  • 打赏
  • 举报
回复
引用 5 楼 showbo 的回复:
iframe添加onload事件,初始化的代码放到onload里面执行,并且iframe加载页面导入jquery和easyui样式,不要用父页的jquery,要不弹层会在父页

  <div id="dv"></div>
<script>
function loadCombobox() {
var win = $('#ifr').contents();
win.$('select', win).combobox()
}
$('#dv').html('<iframe id="ifr" src="test.html" onload="loadCombobox()"></iframe>').dialog()
</script>


test.html

<script type="text/javascript" src="../../jquery.min.js"></script>
<script type="text/javascript" src="../../jquery.easyui.min.js"></script>
<link rel="stylesheet" type="text/css" href="../../themes/default/easyui.css">
<select class="easyui-combobox" id="state" style="width:200px;" >
<option value="AL">Alabama>=1</option>
<option value="AK">Alaska</option>
<option value="AZ">Arizona</option>
<option value="AR">Arkansas</option>
<option value="CA">California</option>
<option value="CO">Colorado</option>

</select>

emmmm,我的iframe是dialog加载的

然后我在父页面的$(function(){})里面写

会有什么问题么,改了input框的可编辑状态也没效果.....
Go 旅城通票 2018-03-20
  • 打赏
  • 举报
回复
iframe添加onload事件,初始化的代码放到onload里面执行,并且iframe加载页面导入jquery和easyui样式,不要用父页的jquery,要不弹层会在父页
  <div id="dv"></div>
    <script>
        function loadCombobox() {
            var win = $('#ifr').contents();
            win.$('select', win).combobox()
        }
        $('#dv').html('<iframe id="ifr" src="test.html" onload="loadCombobox()"></iframe>').dialog()
    </script>
test.html

	<script type="text/javascript" src="../../jquery.min.js"></script>
	<script type="text/javascript" src="../../jquery.easyui.min.js"></script>
	<link rel="stylesheet" type="text/css" href="../../themes/default/easyui.css">
	<select class="easyui-combobox" id="state" style="width:200px;" >
		<option value="AL">Alabama>=1</option>
		<option value="AK">Alaska</option>
		<option value="AZ">Arizona</option>
		<option value="AR">Arkansas</option>
		<option value="CA">California</option>
		<option value="CO">Colorado</option>
		
	</select>
Mika1995 2018-03-20
  • 打赏
  • 举报
回复
引用 3 楼 showbo 的回复:
你自己搞清楚jquery选择器怎么用先。,,

emmmm 学到了学到了,但是我find里面换成.class或者#id,还是不显示
这是那个input
Go 旅城通票 2018-03-20
  • 打赏
  • 举报
回复
你自己搞清楚jquery选择器怎么用先。,,
Mika1995 2018-03-20
  • 打赏
  • 举报
回复
引用 1 楼 showbo 的回复:
当然可以,最简单的方法iframe加id,
$('#iframID').contents()就是iframe的window域,然后自己操作就行了

$('#iframID').contents().find('xxxxx').combobox({...combobox配置......})

Web开发学习资料推荐
easyui datebox设置日期范围
easyui开发技巧


我试了下
这个input框没啥变化啊,我find写的子页面input框的name
Go 旅城通票 2018-03-20
  • 打赏
  • 举报
回复
当然可以,最简单的方法iframe加id, $('#iframID').contents()就是iframe的window域,然后自己操作就行了 $('#iframID').contents().find('xxxxx').combobox({...combobox配置......})

Web开发学习资料推荐
easyui datebox设置日期范围
easyui开发技巧

87,904

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧