头都大了,layer.open如何获取iframe页面的元素的值

未结贴
4 684
需求是这样的,主页面index有个链接(或者说是按钮),点击这个按钮的时候弹出窗口,窗口的页面是iframe.jsp,iframe.jsp里面input,那么想在点击layer.open的按钮的时候获取iframe.jsp页面中input的值。
如下:index页面
<head>
<script src="${pageContext.request.contextPath}/js/jquery-3.1.1.min.js" type="text/javascript"></script>
</head>
<body>
<a id="open">layertest</a>
<script src="${pageContext.request.contextPath}/js/layer/layer.js" type="text/javascript"></script>
<script src="${pageContext.request.contextPath}/js/test.js" type="text/javascript"></script>
</body>
</html>

点击layertest调用的js:
$("#open").on("click", function() {
layer.open({
type : 2,
area : [ '700px', '530px' ],
fixed : false, // 不固定
maxmin : true,
content : 'iframe.jsp',
btn : [ '继续弹出', '全部关闭' ] // 只是为了演示
,
yes : function(layero, index) {
var data = $("#myname").val();
layer.msg("哈哈哈:" + data, {
time : 5000
});
},
btn2 : function() {
layer.closeAll();
}
});
});

iframe页面:
<input id="myname" name="myname" type="text"/>

效果:


难道不能这样直接获取么?
这么简单的都搞了半天,希望大神能够指点指点,谢谢。[泪]
  • 斗地主 斗地主
    2017-02-17 21:16:36
    自己顶一一下[失望]
    0 回复
  • 斗地主 斗地主
    2017-02-17 21:40:19
    之前使用了:

    var body = layer.getChildFrame('body', index);
    var iframeWin = window[layero.find('iframe')[0]['name']]; //得到iframe页的窗口对象,执行iframe页的方法:iframeWin.method();
    console.log(body.html()) //得到iframe页的body内容
    body.find('input').val('Hi,我是从父页来的')
    }
    });
    还是不行,搞到快受不了,后面才发现这里两个参数的顺序问题:

    文档是:(layero, index) 换了下这两个顺序就好了,好坑啊
    0 回复
  • 杭州隔壁老王 杭州隔壁老王 VIP2
    2017-02-17 21:49:21
    感觉思路不对的吧。
    你这个只要iframe.jsp做弹出就行了啊,为什么是要父页面去获取呢? 如果是为了获取这个值,直接index点击这个按钮的时候 直接ajax获取input的值就行了,是不是你把这个搞复杂化了
    你直接iframe.jsp
    parent.layer.msg($("#myname").val());就能达到你的效果吧
    0 回复
  • 斗地主 斗地主
    2017-02-17 22:10:28
    @杭州隔壁老王 弹出的iframe.jsp界面有input给用户填写信息,然后获取iframe.jsp所填写的信息通过ajax提交,iframe.jsp就没有按钮,使用layer.open的按钮来操作提交
    0 回复
近期热议
layer.open中content属性值应该怎么写??? 15
即日起,【案例】必须符合以下要求 14
表情问题。。。 12
《悬赏飞吻:20》!请教各位,我想给我自定义的按钮添加同样的效果,怎么弄呢? 11
请勿将 layui 2.0 的新增组件提前挖出来公开分享 9
LayUI的下拉列表显示 8
layui之select赋值,渲染问题。求高手指点,帮忙看看! 7
求layer.js未加密版 7
这个jeui是什么鬼 6
layim聊天记录调取不出来 6