2012-02-15 100 views
2

如何使用jquery動態地刪除/隱藏「Ok」按鈕?jQuery-ui對話框 - 使用jquery隱藏按鈕

$('#dialog-save').dialog({ 
      autoOpen: false, 
      modal: false, 
      draggable: true, 
      width: 275, 
      height: 175, 
      buttons: { 
       "Ok": function() { 
        $(this).dialog("close"); 
       } 
      } 
     }); 

我能夠改變使用此代碼標題 -

var saveDialog = $('#dialog-save'); 
saveDialog.dialog('option', 'title', 'Message'); 

不知道如何刪除按鈕。謝謝!

+0

你也可以考慮只包括一個id,當您創建按鈕,這樣就可以訪問和操縱之後(見下文)。 – xtempore 2015-07-16 07:35:20

回答

10

您可以在您設置標題相同的方式buttons選項:

saveDialog.dialog("option", "buttons", {}); 

傳遞一個空的對象文本中刪除所有的按鈕。這應該沒問題,因爲你似乎只有一個按鈕。如果您有其他人,只需在撥打option方法時指定要保留的人。

+0

你打敗了我。我本人要回答這個問題。完美的作品。非常感謝你! – tempid 2012-02-15 20:30:30

+0

沒問題,很高興我可以幫助:) – 2012-02-15 20:35:30

0

試試這個fiddle

$(function(){ 
    $('#dialog-save').dialog({ 
      autoOpen: false, 
      modal: true, 
      draggable: true, 
      width: 275, 
      height: 175, 
      buttons: { 
       "Ok": function() { 
        $(this).dialog("close"); 
       } 
      } 
    }); 
    $('#dialog-save').dialog('open'); 
    $('.change').click(function(){ 
     $('#dialog-save').dialog("option",{buttons:{}}); 
     $('#dialog-save').dialog('open'); 
    }); 
});​ 
5

一個用戶界面對話框經常被忽視的特點是,你可以設置按鍵的其他各種屬性,包括「類」和「ID」。如果您需要在實例化後操作按鈕,這些可能非常有用。

例如...

$('#dialog-save').dialog({ 
     autoOpen: false, 
     modal: false, 
     draggable: true, 
     width: 275, 
     height: 175, 
     { 
      id: 'okBtn', 
      text: "Ok", 
      click: function() { 
       $(this).dialog("close"); 
      } 
     }] 
    }); 

// And then at some other point in the code... 
$('#okBtn').remove();