【问题标题】:How to disable clicking on anything other than dialog如何禁用单击对话框以外的任何内容
【发布时间】:2014-01-14 08:40:13
【问题描述】:

我有一个jQuery Dialog,并且希望禁止点击对话框本身以外的任何内容(即,除了对话框之外,不要点击我的 ASPX 页面)。我已经广泛搜索并没有找到任何东西 - 这可以实现吗?

这是我的对话代码:

$('#controlSettingsForm').dialog({
                autoOpen: false,
                width: 'auto',
                maxHeight: 300,
                buttons: {
                    "Save": function () {

                    },
                    "Cancel": function () {
                        $(this).dialog("close");
                    }
                },
            });

$('#controlSettingsForm').dialog("open");

【问题讨论】:

标签: javascript jquery html css .net


【解决方案1】:

使用模态 true 进行叠加:

('#controlSettingsForm').dialog({
            autoOpen: false,
            width: 'auto',
            maxHeight: 300,
            modal:true,
            buttons: {
                "Save": function () {

                },
                "Cancel": function () {
                    $(this).dialog("close");
                }
            },
        });

$('#controlSettingsForm').dialog("open");

【讨论】:

  • 谢谢 - 这正是我想要的。我不确定到底要搜索什么。看起来 modal 是我正在寻找的关键字:)
  • @DotNET: 很高兴它帮助了你... :)
【解决方案2】:

只需添加参数modal: true

$('#controlSettingsForm').dialog({
                autoOpen: false,
                width: 'auto',
                modal: true,              // <---- Add this parameter
                maxHeight: 300,
                buttons: {
                    "Save": function () {

                    },
                    "Cancel": function () {
                        $(this).dialog("close");
                    }
                },
            });

$('#controlSettingsForm').dialog("open");

这将使对话框显示为“模态”。这意味着背景将变灰,在对话框关闭之前您无法单击它。

有关模态参数检查的更多信息和示例: http://jqueryui.com/dialog/#modal-confirmation

【讨论】:

    【解决方案3】:

    http://jqueryui.com/dialog/#modal

    $('#controlSettingsForm').dialog({
                autoOpen: false,
                width: 'auto',
                maxHeight: 300,
                modal: true,
                buttons: {
                    "Save": function () {
    
                    },
                    "Cancel": function () {
                        $(this).dialog("close");
                    }
                },
            });
    
    $('#controlSettingsForm').dialog("open");
    

    【讨论】:

    • 谢谢 - 这正是我想要的。我不确定到底要搜索什么。看起来 modal 是我正在寻找的关键字:)
    猜你喜欢
    • 2011-08-04
    • 1970-01-01
    • 2020-07-27
    • 2012-01-13
    • 2012-01-08
    • 2023-02-16
    • 1970-01-01
    • 2019-04-27
    • 1970-01-01
    相关资源
    最近更新 更多