0
我試圖在引導上創建可配置的模態窗口。我的意圖是通過創建函數參數動態地填充模態。在頁腳按鈕上自動調用模態調用函數單擊
的一個參數是報頭(titolo
),第二(messaggio
)的標題模態主體的文本可以是HTML或純文本中,第三(conferma
)是調用的函數,如果確認按鈕(如果此功能存在,則創建)單擊,第四個(callback
)是在模態窗口關閉時調用的回調函數。
不幸的是我不能工作,你能幫助我嗎?
function apriModal(titolo,messaggio,conferma,callback){
jQuery.noConflict();
var re=new RegExp("</?\w+\s+[^>]*>");
$("#modalHeaderTitle").text(titolo);
if(messaggio.match(re)){
$("#modalBodyText").html(messaggio);
}
else{
$("#modalBodyText").html("<p>"+messaggio+"</p>");
}
(typeof conferma == 'function') ? $("#modalConfirm").show() : $("#modalConfirm").hide();
$("#finestraModal").modal('show');
$("#modalConfirm").click(function(){
if(conferma){
$("#finestraModal").modal('hide');
conferma.apply();
}
});
$("#modalClose").click(function(){
if(callback){
callback.apply();
}
$("#finestraModal").modal('hide');
});
}
和這裏的模式的基本的html:
<div id="finestraModal" class="modal hide fade">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h3 id="modalHeaderTitle"></h3>
</div>
<div class="modal-body" id="modalBodyText">
</div>
<div class="modal-footer">
<a href="#" id="modalClose" class="btn">Chiudi</a>
<a href="#" id="modalConfirm" class="btn btn-primary">Conferma</a>
</div>
</div>
我不知道。我已經花了幾個小時檢查代碼..太感謝你了!!!!你爲我節省了很多小時的絕望!但我仍然有問題。每次打開模式時,我的代碼都會附加一個新聞事件處理程序,所以如果我打開模式3次,我將執行3次賦值和回調函數。我該如何解決這個問題? – 2013-02-27 11:22:15
您可以在.click()之前使用'.off()'來移除事件處理程序。演示:http://jsfiddle.net/indream/X3EnA/2/ – inDream 2013-02-28 19:27:39
它工作完美!非常感謝!!! – 2013-03-06 11:26:17