首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

jquery ui dialog里嵌套iframe打开其他dialog时,会刷新前一个dialog解决方法

2013-11-25 
jquery ui dialog里嵌套iframe打开其他dialog时,会刷新前一个dialog如题,我要弹出一个新增用户的dialog界

jquery ui dialog里嵌套iframe打开其他dialog时,会刷新前一个dialog
如题,我要弹出一个新增用户的dialog界面,所以在弹出的dialog里面嵌套的iframe,表单里有几个必须填写的项,如果没有填写,将弹出一个消息提示的dialog,这两个dialog在同一个父页面中,因为如果把消息提示的dialog放到新增用户的dialog里面,则遮罩层不能覆盖全部的地方,所以放到了同一个父页面中,这样在新增用户的dialog里面调用父页面的消息提示dialog,可是一弹出消息提示的dialog,iframe就刷新了。求大神帮忙解答这到底是怎么回事。。。快弄死我了。。。
[解决办法]
按照楼主的描述试了下,并没有刷新,版本jquery-ui-1.8.21

楼主自己检查下父页msgDialog变量的作用域是否为全局的,msgDialog变量名是否拼错了,如果错误就会报错导致submit按钮提交了表单

test.html


<script>
    $(function () {

        window.frm = $("#dialog-modal").dialog({
            height: 140
        });
        window.msgDialog = $('#dvMsg').dialog({ autoOpen: false, height: 140, modal: true });
    });
</script>
<div id="dvMsg"></div>
<div id="dialog-modal">
<iframe src="c.html"></iframe></div>


c.html
<form><input type="submit" id="commit" value="commit" />
<script>
    var pWin = parent;
    document.write(new Date().toLocaleString())
    $(function () {
        $('#commit').click(function () {
            pWin.msgDialog.html("TEST不能为空!");
            pWin.msgDialog.dialog("open");    //打开的时候会刷新
            return false;
        });
    });
</script></form>

热点排行