我有2个带翻译的Javascript文件,将根据用户语言包含在内。这适用于大多数情况。但不适用于JQuery UI对话框中的Buttons对象。任何想法如何解决这个问题?
if (data.status == 'success') {
options = {
buttons: {
CLOSE: function() {
$(this).dialog('close');
}
}
};
关闭必须翻译..
答案 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 dialog(since 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",
并替换"关闭"与您的翻译。