使用jquery UI Dialog从变量更改按钮标题的正确方法是什么?

时间:2014-03-14 09:50:13

标签: jquery jquery-ui-dialog

在jquery UI对话框中,我希望将som变量的放入按钮中。

如果我有:

var okButtonText= 'Ok';
var cancelButtonText= 'Cancel';

我希望按钮设置为值Ok和分别取消:

$(dialogObj).dialog({
      modal: true,
      buttons: {
        "okButtonText": function() {             
          $( this ).dialog( "close");
        },
        "cancelButtonText": function() {
          $( this ).dialog( "close" );
        }
       }
});

当我在上面这样做时,按钮被命名为okButtonText和cancelButtonText(我希望它们被命名为OK和Cancel)

如果我试着没有引号:

$(dialogObj).dialog({
      modal: true,
      buttons: {
        okButtonText: function() {             
          $( this ).dialog( "close");
        },
        cancelButtonText: function() {
          $( this ).dialog( "close" );
        }
       }
});

它的效果相同。

我想我可以在jquery UI对话框中使用open-option更改按钮(更改每个按钮的html),但这似乎完全错误,我只是觉得有一个更好的解决方案: - )

2 个答案:

答案 0 :(得分:1)

尝试使用buttonstext选项:

  

指定应在对话框中显示哪些按钮。上下文   回调是对话框元素;如果你需要访问   按钮,它可用作事件对象的目标。多   支持的类型:对象:键是按钮标签和值   是单击关联按钮时的回调。阵:   数组的每个元素必须是定义属性的对象,   要在按钮上设置的属性和事件处理程序。

代码:

$(".selector").dialog({
    modal: true,
    buttons: [{
        text: okButtonText,
        click: function () {
            $(this).dialog("close");
        }
    }, {
        text: cancelButtonText,
        click: function () {
            $(this).dialog("close");
        }
    }]
});

答案 1 :(得分:1)

尝试在此处使用text选项:

$(".selector").dialog({
    modal: true,
    buttons: [{
        text: "Ok",
        click: function () {
            $(this).dialog("close");
        }
    }, {
        text: "Cancel",
        click: function () {
            $(this).dialog("close");
        }
    }]
});