javascript - jQuery UI 模态确认对话框中取消按钮的名称有什么神奇之处吗?

标签 javascript modal-dialog jquery-ui-dialog

如果我们查看 jQuery UI Dialog Modal confirmation demo 的来源:

$("#dialog-confirm").dialog({
    resizable: false,
    height: 140,
    modal: true,
    buttons: {
        "Delete all items": function () {
            $(this).dialog("close");
        },
        Cancel: function () {
            $(this).dialog("close");
        }
    }
});

我们可以看到 Delete all itemsCancel 按钮的区别:只有 Delete all items 按钮有标题在 “引号” 中。类似的代码可以在网络上找到并复制粘贴。

这有什么意义吗?我查看了 jquery.ui.dialog.js 的(未压缩)源代码,我认为没有任何有趣的事情,但 JS 不完全是我的强点,所以我很容易遗漏一些东西。

最佳答案

这没什么好笑的,它只是一种用不寻常的名称指定属性的方法。你也可以这样做:

$("#dialog-confirm").dialog({
resizable: false,
height: 140,
modal: true,
buttons: {
    "Delete all items": function () {
        $(this).dialog("close");
    },
    "Cancel": function () {
        $(this).dialog("close");
    }
}});

这将是一回事。

基本上,您传递给 $("...").dialog 的只是一组作为 javascript 对象的选项。 jQuery 将在下面做的是使用 $.extend(...) 将其与其默认值合并。

编辑:删除了狡猾的代码

关于javascript - jQuery UI 模态确认对话框中取消按钮的名称有什么神奇之处吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6665952/

相关文章:

javascript - 显示带有 HTML 内容的模态窗口

jquery-ui - JQuery UI 对话框问题 : Close removes the div

javascript - TinyMCE 在 jqueryUI 模态对话框中打开

javascript: MIME 类型 ('text/html' ) 不可执行,并且启用了严格的 MIME 类型检查

javascript - 我什么时候应该使用 Q.defer 什么时候只使用 Promise.resolve/reject?

javascript - 在 React 中,子组件如何调用在其父组件上下文中执行的函数?

javascript - Jquery对话框错误: cannot call methods on dialog prior to initialization; attempted to call method 'close'

javascript - 使用javascript随机图像并根据随机图像将背景颜色应用于页面

jquery - 使用自定义宽高,jQuery Mobile Dialog center to screen

javascript - 用 Foundation-5 显示模式替换 JavaScript Confirm