我在另一个帖子上找到了这个答案..
How to add multiple buttons in Jquery UI dialog box?
使用此语法,如何将类添加到特定按钮?
$("#mydialog").dialog({
buttons: {
'Confirm': function() {
//do something
$(this).dialog('close');
},
'Cancel': function() {
$(this).dialog('close');
}
}
});
答案 0 :(得分:84)
您可以通过
将对象添加到对话框中的按钮中$('#mydialog').dialog({
buttons:{
"send":{
text:'Send',
'class':'save'
},
"cancel":{
text:'Cancel',
'class':'cancel'
}
});
我认为这对你有用。你可以找到更多答案here。
答案 1 :(得分:49)
通过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的内置选择器更具体,才能应用样式。
答案 2 :(得分:41)
希望它会有所帮助!
$("#mydialog").dialog({
buttons: {
'Confirm': function() {
//do something
$(this).dialog('close');
},
"Cancel": {
click: function () {
$(this).dialog("close");
},
text: 'Cancel',
class: 'custom-class'
}
}
});
答案 3 :(得分:7)
使用open事件处理程序:
open: function(event) {
$('.ui-dialog-buttonpane').find('button:contains("Cancel")').addClass('cancelButton');
}
干净,简单,小菜一碟!
答案 4 :(得分:2)
感谢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'
}
};