2013-02-12 50 views
1

我有一個事務編輯jQuery對話框,當點擊正確的按鈕時彈出就好,但在對話框中定義的「保存」和「取消」按鈕不顯示。在該對話框的HTML是:按鈕沒有出現在jQuery對話框中

 <div id="trxpop"> 
     <div> 
      <label for="txtItem1">Item1: </label> 
      <input id="txtItem1" type="text" /><br /> 
      <label for="item1">Item2: </label>  
      <input id="txtItem2" type="text" /><br /> 
     </div> 
    </div> 

和jQuery是這裏

jQuery.fn.EditTrx = function (item1, item2) { 
$("#txtItem1").val(item1); 
$("#item1").val(item1); 
$("#trxpop").dialog({ 
    title: 'Edit Transaction', 
    modal: true, 
    buttons: { 
     'Save': function() { 
      /* Do stuff */ 
      $(this).dialog('close'); 
     }, 
     'Cancel': function() { 
      $(this).dialog('close'); 
     } 
    }, 
    resizable: false, 
    draggable: true, 
    stack: true, 
    closeOnEscape: true, 
    zIndex: 1320, 
    width: 500 
}); 

}

這應根據所有我看過的文檔工作。

+0

您的模態代碼適合我。 – 2013-02-12 13:59:25

+0

這只是奇怪的 - 對我來說,沒有按鈕的對話框顯示出來 – 2013-02-12 14:04:41

+0

如果我的回答確實爲你顯示了按鈕,你介意提供一個鏈接到你的工作或創建一個小提琴重現錯誤使用你的代碼? – gulty 2013-02-12 14:16:24

回答

0

我不得不圍繞完整的按鈕定義添加一組新的括號,現在它工作正常。我編輯了我上面的原始代碼示例以反映此更改。謝謝你所有的答覆。

2

http://jsfiddle.net/G4F7M/

只爲我工作得很好。只是改變了FUNC呼叫並增加了一個按鈕,在打開對話框:

$('input').click(function(){ 
EditTrx(); 
}); 

所以,如果這些按鈕不顯示它可能是別的東西不會像CSS問題。

+0

我只顯示函數本身 - 而不是打開對話框的按鈕的函數調用。這是工作很好,對話框打開就好 - 只是對話框中的按鈕沒有顯示 - 謝謝你的答覆。 – 2013-02-12 14:21:42

+0

所以你可以看到小提琴裏面的按鈕,是嗎?不在你的頁面上? – gulty 2013-02-12 15:45:40

+0

正確 - 紫外線 - 但我已經解決了我的問題 - 見下文 – 2013-02-13 15:39:46

0

如果問題仍然如接受的答案中所述那樣,則可以通過在對話控件的打開事件中執行以下操作來解決。

open: function (event, ui) { 
    //For displaying the buttons of GUI. 
    $('.ui-button-text').each(function (i) { 
     $(this).html($(this).parent().attr('text')); 
    }) 
},