我在另一个帖子上找到了这个答案。
如何在Jquery UI对话框中添加多个按钮?
使用此语法,如何向特定按钮添加类?
$("#mydialog").dialog({
buttons: {
'Confirm': function() {
//do something
$(this).dialog('close');
},
'Cancel': function() {
$(this).dialog('close');
}
}
});
通过
$('#mydialog').dialog({
buttons:{
"send":{
text:'Send',
'class':'save'
},
"cancel":{
text:'Cancel',
'class':'cancel'
}
});
我想这对你有用。你可以在这里找到更多的答案。
看起来没有一个很好的方法通过API来做到这一点,但是你可以在create
的事件处理程序中添加类:
$("#dialog").dialog({
buttons: {
'Confirm': function() {
//do something
$(this).dialog('close');
},
'Cancel': function() {
$(this).dialog('close');
}
},
create:function () {
$(this).closest(".ui-dialog")
.find(".ui-button:first") // the first button
.addClass("custom");
}
});
如果需要第二个按钮,可以使用:
$(this).closest(".ui-dialog").find(".ui-button").eq(1).addClass("custom") // The second button
键是$(this).closest(".ui-dialog").find(".ui-button")
,它将选择对话框中的按钮。之后,你可以应用任何你想要的选择器(包括:contains(...)
,这可能是有用的,如果你想选择一个按钮基于其文本而不是其顺序)。
下面是一个例子:http://jsfiddle.net/jjdtG/
还要注意,为了应用样式,您想要应用的样式的CSS选择器必须比jQueryUI的内置选择器更具体。
希望对大家有所帮助!
$("#mydialog").dialog({
buttons: {
'Confirm': function() {
//do something
$(this).dialog('close');
},
"Cancel": {
click: function () {
$(this).dialog("close");
},
text: 'Cancel',
class: 'custom-class'
}
}
});
使用打开事件处理程序:
open: function(event) {
$('.ui-dialog-buttonpane').find('button:contains("Cancel")').addClass('cancelButton');
}
干净,简单,小菜一碟!
感谢LintonB,您可以添加所有的属性附加到一个按钮,如样式,id等…
dialog_options.buttons = {
'Modify': {
click: function() {
$(this).dialog('close');
if (inputs.phone !== '') {
inputs.phone.focus();
inputs.phone[0].value = "";
}
},
class: 'btn btn-labeled btn-warning',
style: 'margin-right: 30px;',
id: 'modificationId'
},
'Keep': {
click: function() {
$(this).dialog('close');
_this.validatePhone(i);
},
class: 'btn btn-labeled btn-warning',
id: 'conserverId'
}
};