JQuery对话框 - 不使用Key设置按钮文本

cwe*_*ton 4 javascript jquery jquery-ui jquery-ui-dialog

我需要为JQuery对话框的按钮文本提供本地化,但是JQuery对话框通常使用按钮文本的键:

$(DialogDiv).dialog({
    bgiframe: true,
    resizable: false,
    buttons: { Save : saveCallback, Cancel : cancelCallback}
});
Run Code Online (Sandbox Code Playgroud)

有没有办法单独指定文本而不使用键作为文本值?目前我正在使用它,但我不喜欢使用本地化的值作为键:

var buttonCallbacks = {};       
buttonCallbacks[com.i18n.getText("Save")] = function() {};
buttonCallbacks[com.i18n.getText("Cancel")] = function() {};

$(DialogDiv).dialog({
    bgiframe: true,
    resizable: false,
    buttons: buttonCallbacks 
});
Run Code Online (Sandbox Code Playgroud)

谢谢.

gna*_*arf 6

如果你看一下Dialog 的按钮选项,你会发现列出的第二种格式接受一个对象数组:

$(DialogDiv).dialog({
    bgiframe: true,
    resizable: false,
    buttons: [ { 
        text: com.i18n.getText("Save"),
        click: saveCallback
      }, {
        text: com.i18n.getText("Cancel"),
        click: cancelCallback
      }
    ]
});
Run Code Online (Sandbox Code Playgroud)