【问题标题】:How to set jQuery UI dialog defaults如何设置 jQuery UI 对话框默认值
【发布时间】:2011-07-21 13:05:36
【问题描述】:

如何设置 jQuery UI 对话框的默认值? 例如,这是我在 jQuery UI 日期选择器中设置默认值的方式:

$.datepicker.setDefaults({ dateFormat: 'dd/mm/yy' });

我在dialog documentation 中找不到相同的功能

【问题讨论】:

    标签: jquery-ui jquery-ui-dialog


    【解决方案1】:

    该 AFAIK 没有内置功能,但我通常会自己将它们设置在单独的哈希中,如下所示:

    var dialog_defaults = {
      autoopen: false,
      buttons: {
        close: function() { $(this).dialog('close'); }
      }
    };
    

    然后当我创建对话框时,我使用 jQuery 的 extend 方法使它们工作,像这样:

    $('#divvie').dialog(
      $.extend({}, dialog_defaults, {
        autoopen: true
      })
    );
    

    您传入的第二组参数将覆盖/合并 dialog_defaults 变量中的任何内容。只需确保将空哈希 ({}) 放在那里,否则您的默认值将被覆盖,这在过去让我很痛苦。

    【讨论】:

      【解决方案2】:

      我找到了解决办法

      $.extend($.ui.dialog.prototype.options, { modal: true, width: 650 });
      

      【讨论】:

      • $.extend 改变第一个参数。您最终会将属性堆叠到 options 对象中。请参阅@Groovetrain 的答案中提到使用空哈希。
      • 如果您希望更改原始问题所要求的默认选项,这是一个很好的解决方案。
      猜你喜欢
      • 2012-03-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-12-10
      • 2015-02-08
      • 2010-10-27
      • 2011-04-03
      相关资源
      最近更新 更多