是否可以更改所有JQuery UI对话框按钮(是/否/取消)标题?

时间:2011-11-23 11:07:28

标签: jquery localization dialog jquery-ui-dialog

是否可以更改每个“是”,“否”和“取消”按钮的标题,还是必须单独为每个对话框执行此操作?

按要求提供更多详细信息:

在典型的JQuery对话框中,对话框按钮的定义如下:

buttons: {
   Yes: function () {
   },
   No: function () {
   }
}

我正在寻找一种方法来更改“是”,“否”和“取消”按钮文本,而不会更改每个对话框。

所以,例如,对话框定义如上,“是”按钮应自动拥有正确的本地化标题。

2 个答案:

答案 0 :(得分:4)

我假设我们正在讨论jQuery UI的对话框。我建议编写一个包装对话框插件的插件,并传递所有选项,除了Yes,No或Cancel按钮的标题。您可以在包装器插件中设置这些。

这很简单。这是一种入门方式:

(function( $ ){

    $.fn.myDialog = function( options ) {  

        return this.each(function() {

    var settings = $.extend( {
          'buttons'         : buttons: [
        {
            text: "My Yes",
            click: options.myOkCallback
        },
        {
            text: "My Cancel",
            click: options.myCancelCallback
        },
        {
            text: "My No",
            click: options.myNoCallback
        }
    ]

    }, options);

    $(this).dialog(settings);

});

  };
})( jQuery );

答案 1 :(得分:0)

$(":button[value=Yes]").val("Evet");

它会将所有值为“Yes”的按钮翻译为土耳其语“Ever”。 你可以找到JSFiddle example here