您的位置:首页 > Web前端 > JQuery

jQuery ui1.7 dialog只能弹出一次问题

2018-10-12 14:02 507 查看

// 显示确认对话框
function showConfirm(txtTitle, txtMsg, callback){
getDivDialog().text(txtMsg).dialog({
        modal: true
        , overlay: {
            opacity: 0.5
        }
        , title: txtTitle
        ,buttons: {
            "是" : function(){
                callback();
                $(this).dialog("close");
            }
            ,"否" : function(){
                $(this).dialog("close");
            }
        }
    });
}

但是在使用ui.1.7.1 的时候,每次按钮的click事件只能让dialog显示一次。无语。。。
查看官方文档也没有什么解释。 Google了一把,发现,在ui.1.7.1中dialog必须首先初始化。
在document.ready(function(){
// 初始化dialog
})

$("#layout-confirm").dialog({
autoOpen: false,
modal: true,
title: "删除"
    });

后面的使用中,还有一点是需要注意的:
因为有些dialog参数是变量传递进去的,所以,必须先把option附加上,然后再open
代码示例:

delText.click(function(){
        $("#layout-confirm").dialog(
            'option'
            , 'buttons'
            ,{
                "确定": function() {
                    if(file.type == 0){
                        deleteFolder(file.path);
                    }
                    else{
                        deleteFile(file.path);
                    }
                }
                ,"取消":function(){
                    $(this).dialog("close");
                }
            }
        );
        $("#layout-confirm").dialog("open");
});

ok,搞定~~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: