我有一個問題,我正在重用對話框,所以我不想重複代碼。我遇到的問題是當我點擊一個「添加新的」按鈕,我有按鈕「保存」和「取消」。對話框中的保存按鈕可以保存信息。如果我點擊「編輯現有」按鈕來編輯我的信息,我希望「保存」按鈕變成「編輯」按鈕。這可能嗎?更改jquery對話框按鈕
回答
我認爲你要做的是,在運行時,根據用戶操作更改按鈕的文本。這個涉及Richard Worth的discussion可能會有所幫助,而這正是我爲了完成你所要做的事情而必須使用的。
基本上,通過將按鈕數組定義爲對象文本(在對話框定義中內聯),您所做的嘗試是不可能的。你應該做的是在對話框初始化之外定義你的按鈕數組;你的數組索引可以是你的標籤文本(就像你在消息討論的例子中看到的那樣)。然後,在初始化數組時,只需將buttons屬性分配給按鈕數組。
在僞代碼,你會做到這一點:
function createDialog(mode) { //mode=new for dayClick; edit for eventClick
var myButtons = {}; //initialize the object to hold my buttons
if (mode === "new") {
myButtons["Save"] = function() {...} //the function that does the save
} else {
myButtons["Edit"] = function() {...} //the function that edits
}
myButtons["Cancel"] = function() {...} //common cancel function for either new or edit mode
//other logic
$("#dialogAddEdit").dialog({
...
buttons: myButtons, //assign the buttons property to your myButtons array object
...
});
}
希望這有助於!
@ D Hoerster - 在Firebug中, – hersh 2010-08-17 12:34:08
你在哪裏定義模式?在我的例子中,它只是僞代碼 - 我假設你知道用戶正在採取什麼操作(不管它是一個cre吃或編輯動作)。基於此,您可以轉到代碼的相應部分來添加按鈕。對不起,如果不明確。您如何知道用戶是否嘗試創建新內容或編輯現有項目? – 2010-08-17 12:48:33
我正在使用fullcalendar彈出模式...所以在fullcalendar的dayClick這是一個回調,這將添加一個事件... on fullcalendar的eventClick,也是一個回調,這將編輯和事件。 – hersh 2010-08-17 13:04:01
還有另一個簡單的解決方案做到這一點:
只需創建對話框通常,給兩個(或更多)按鈕的「關鍵詞」(這裏「open_key」和「cancel_key」),然後,剛剛初始化後,使用一點jQuery技巧設置這些HTML元素的文本:contains()。
下面示例代碼(pp_loca是我的函數來獲取一個本地化的字符串,但pp_loca不能在「按鈕{...}」選項一起使用...
$("#dialog_open_from_server").dialog({
resizable: false,
height: "auto",
width: 600,
modal: true,
buttons: {
"open_key": function() {
$(this).dialog("close");
},
"cancel_key": function() {
$(this).dialog("close");
}
}
});
$('.ui-button:contains("open_key")').html(pp_loca('ITF_26'));
$('.ui-button:contains("cancel_key")').html(pp_loca('ITF_27'));
- 1. 更改jquery對話框按鈕文本
- 2. 在jQuery對話框中更改按鈕
- 3. jQuery UI的對話框按鈕改變
- 4. jQuery對話框 - 修改按鈕陣列
- 5. jquery對話框tabindex按鈕
- 6. 更改我的jQuery的對話框按鈕文本時,對話框負載
- 7. Jquery對話框中的按鈕文本鼠標光標更改
- 8. jQuery:對話框問題 - 初始化後更改按鈕
- 9. jQuery對話框關閉按鈕位置更改
- 10. 如何更改對話框中的按鈕大小jQuery
- 11. 如何更改按鈕圖像jQuery的對話框
- 12. 更改jquery對話框按鈕上的文本會影響按鈕高度
- 13. 在對話框中按下按鈕時更改對話框上的視圖
- 14. 在jQuery的對話框中標準按鈕就像對話框
- 15. 如何隱藏對話框加載的jQuery對話框按鈕?
- 16. jquery對話框 - 哪個按鈕打開對話框?
- 17. jQuery的對話框按鈕返回
- 18. 添加類到jquery對話框按鈕
- 19. jQuery UI對話框按鈕 - 返回true?
- 20. jquery ui對話框自定義按鈕
- 21. jQuery的用戶對話框按鈕
- 22. JQuery對話框不顯示按鈕
- 23. jQuery UI對話框按鈕定位
- 24. jQuery UI的對話框按鈕
- 25. jQuery的對話框按鈕太多
- 26. 按鈕上的jquery對話框點擊
- 27. jquery對話框 - 按鈕工具提示
- 28. ASP:按鈕不jquery的對話框
- 29. 單選按鈕,多個對話框,jquery
- 30. 爲jQuery UI的對話框按鈕
很難說我會考慮插入正在編輯的記錄的主鍵 - 在編輯模式 - 然後讓服務器代碼處理該字段的缺失(或存在) – Wayne 2010-08-17 02:22:59