将“按钮”翻译为“按钮”在 jQuery UI 对话框中

发布于 2024-10-31 03:42:38 字数 343 浏览 3 评论 0原文

我有两个带有翻译的 JavaScript 文件,将根据用户的语言包含这些文件。这对于大多数情况都适用。但不适用于 jQuery UI 对话框内的 Buttons 对象。有什么想法如何解决这个问题吗?

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

CLOSE 必须翻译。

I have two JavaScript files with translations, which will be included depending on the users language. This works fine for most cases. But not for the Buttons object inside an jQuery UI Dialog. Any ideas how to solve this?

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

CLOSE must be translated.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

愛上了 2024-11-07 03:42:39

像这样创建按钮对象:

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

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

编辑:更新为使用 CLOSE 变量。

Create the buttons object like this:

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

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

Edit: Updated to use the CLOSE variable.

柳若烟 2024-11-07 03:42:39

两种在对话框中指定按钮的方法 (自 1.8.5 起)。其中只有一个对国际化有用。像这样定义你的选项:

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

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

There are two ways to specify buttons in a dialog (since 1.8.5). Only one of them is useful for internationalization. Define your options like this:

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

@dioslaska's solution works as well, but I think this way is prettier.

萌逼全场 2024-11-07 03:42:39

只需要加引号即可:P

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

Just put in in quotation marks :P

if (data.status == 'success') {
  options = {
    buttons: {
      'translated text for close': function() {
                  $(this).dialog('close');
               }
       }
  };
病女 2024-11-07 03:42:39

您必须修改 jquery-ui javascript 文件中对话框小部件的声明。

找到该行

closeText: "Close",

并将“Close”替换为您的翻译。

You must modify the declaration of the Dialog widget in jquery-ui javascript file.

Find the line

closeText: "Close",

and replace "Close" with your translation.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文