2009-09-24 255 views
20

我想在jquery對話框的按鈕上添加css類。添加類到jquery對話框按鈕

這裏是我的代碼:

$(document).ready(function(){ 
     $('#messageBox p').html('bla bla bla. Ok?'); 
     $('#messageBox').dialog({ 
     modal : true, 
     buttons: { 
      'Yes': function() { 
      doSomething(); 
      $(this).dialog('close'); 
      }, 
      'No': function() { 
      doAnotherThing(); 
      $(this).dialog('close'); 
      } 
     } 
     }); 
    }); 

例如,我想加上我的‘是’按鈕「.red」級。

我該怎麼做?

謝謝!

回答

49
buttons: [ 
      { 
       text: "Submit", 
       "class": 'submit_class_name', 
       click: function() {      
        $(this).dialog("close"); 
       } 
      }, 
      { 
       text: "Cancel", 
       click: function() { 
        $(this).dialog("close"); 
       } 
      } 
      ] 
+2

這是最好的答案!注意:在類屬性周圍使用引號,在iPad上會引發錯誤(可能是因爲類是保留(關鍵字)字) – VDP 2012-04-30 10:44:51

+0

在IE8中也有同樣的錯誤。用'「class」'而不是'class'解決 – 2015-04-20 08:52:39

1

您是否試過addClass功能?

+0

但是,在補充一點addclass功能? – rahul 2009-09-24 13:45:20

+0

像phoenix一樣的答案...我在哪裏可以把addClass函數,因爲按鈕是由jQuery對話框和按鈕沒有ID的。 – nicosomb 2009-09-24 13:50:10

-4

.addClass功能  

+0

是啊,我知道這個功能......但我不知道如何在我的情況下使用它。 – nicosomb 2009-09-24 13:50:46

5

有可以用來指定CSS類的對話框本身對話框功能的dialogClass選項。您可以給它一個唯一的類名,並使用此類名來獲取對該對話框的任何子元素的引用。然後,使用選擇器按位置或按其包含的文本獲取對子按鈕的引用(可能會更有效地使用前者)。

7

我已經得到了解決,這要歸功於豐富:

​​3210

解決了!

+1

保存我的一天! :)謝謝 – 2016-11-24 21:29:52

1

有同樣的問題。非常類似於尼科的解決方案,但樣式添加到打開的功能對話框上:

open: function() { 
       // add style to buttons (can't seem to do this via the button definition without breaking IE) 
       $(".someDialog .ui-dialog-buttonset button:first").not(".buttonPrimary").addClass("buttonPrimary"); 
       $(".someDialog .ui-dialog-buttonset button:last").not(".buttonSecondary").addClass("buttonSecondary"); 
       $("#someDialog").focus(); 
      } 
相關問題