在JQuery UI对话框中翻译“按钮”

时间:2011-04-08 06:07:35

标签: jquery button internationalization translation jquery-ui-dialog

我有2个带翻译的Javascript文件,将根据用户语言包含在内。这适用于大多数情况。但不适用于JQuery UI对话框中的Buttons对象。任何想法如何解决这个问题?

if (data.status == 'success') {
    options = {
        buttons: {
            CLOSE: function() {
                      $(this).dialog('close');
                   }
            }
        };

关闭必须翻译..

4 个答案:

答案 0 :(得分:8)

像这样创建按钮对象:

var myButtons = {};
myButtons[CLOSE] = function() { $(this).dialog('close'); };

if (data.status == 'success') {
  options = {
    buttons: myButtons
  };
}

编辑:已更新以使用CLOSE变量。

答案 1 :(得分:3)

two ways to specify buttons in a dialogsince 1.8.5)。其中只有一个对国际化有用。定义如下选项:

if (data.status == 'success') {
    options = {
        buttons: [{
            text: CLOSE,
            click: function() {
                      $(this).dialog('close');
                   }
        }]
    }
}

@ dioslaska的解决方案也有效,但我认为这种方式更漂亮。

答案 2 :(得分:0)

只需加上引号:P

if (data.status == 'success') {
  options = {
    buttons: {
      'translated text for close': function() {
                  $(this).dialog('close');
               }
       }
  };

答案 3 :(得分:0)

您必须在 jquery-ui javascript文件中修改Dialog小部件的声明。

找到行

closeText: "Close",

并替换"关闭"与您的翻译。