【发布时间】:2010-12-22 03:07:39
【问题描述】:
所以我目前有一个带有两个按钮的 jQuery 对话框:保存和关闭。我使用以下代码创建对话框:
$dialogDiv.dialog({
autoOpen: false,
modal: true,
width: 600,
resizable: false,
buttons: {
Cancel: function() {
// Cancel code here
},
'Save': function() {
// Save code here
}
},
close: function() {
// Close code here (incidentally, same as Cancel code)
}
});
但是,使用此代码时,两个按钮的颜色相同。我希望取消按钮的颜色与保存按钮的颜色不同。有没有办法使用一些内置的 jQuery 选项来做到这一点?我没有从文档中得到太多帮助。
请注意,我正在创建的“取消”按钮是预定义的类型,但“保存”是我自己定义的。不确定这是否会对问题产生任何影响。
任何帮助将不胜感激。谢谢。
更新:共识是这里有两条路可以走:
- 使用 Firefox 检查 HTML firebug 之类的插件,并注意 jQuery 的 CSS 类 适用于按钮,并采取 试图压倒他们。 注意:在 我的 HTML,两个按钮都使用了 完全相同的 CSS 类并且没有唯一性 ID,所以这个选项被淘汰了。
- 在对话框打开时使用 jQuery 选择器 抓住我想要的按钮, 然后添加一个 CSS 类。
我选择了第二个选项,并使用了 jQuery find() 方法,因为我认为这比使用 :first 或 :first-child b/c 更合适 我想要更改的按钮不一定是第一个标记中列出的按钮。使用 find,我可以指定按钮的名称,并以这种方式添加 CSS。我最终得到的代码如下:
$dialogDiv.dialog({
autoOpen: false,
modal: true,
width: 600,
resizable: false,
buttons: {
Cancel: function() {
// Cancel code here
},
'Save': function() {
// Save code here
}
},
open: function() {
$('.ui-dialog-buttonpane').find('button:contains("Cancel")').addClass('cancelButtonClass');
}
close: function() {
// Close code here (incidentally, same as Cancel code)
}
});
【问题讨论】:
标签: jquery css jquery-ui button dialog