2013-10-08 63 views
1

我在我的引導程序中有模態。模塊從dataremote源獲取其內容。在這個模式中,我定義了一些javascript函數。bootstrap遠程模態刪除javascript

我的問題是,當我關閉模式,並再次打開它的JavaScript代碼可用兩次。這意味着單擊事件將多次執行。

有沒有可能清除隱藏的模態JavaScript代碼?

我也用

$('body').on('hidden', '.modal', function() { 
    $(this).removeData('modal'); 
}); 

從顯示相同的內容再次

+0

也許你使用過jQuery的.append所以重新點擊時內容是重複的。你可以讓JS小提琴瞭解情況嗎? – Maikeximu

回答

1

這裏,以防止有一個例子:

標記:

<button type="button" id="test">Launch modal</button> 
<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"> 
    <div class="modal-dialog"></div> 
</div> 

腳本:

$('#test').click(function() { 
    $("#myModal").modal({ 
     remote : 'your-remote-href' 
    }); 
}); 
//target this event, see http://getbootstrap.com/javascript/#modals -> events 
$('#myModal').on('hidden.bs.modal', function() { 
    $(this).empty(); //<---- empty() to clear the modal 
}) 

我以爲你不使用href -attribute

<button type="button" data-toggle="modal" href="some href" data-target="#myModal">Launch modal</button> 

這樣做,模態內容只裝載一次。清空模式將是永久的。