我想你正在尋找這個自定義函數。它需要一個數據切換屬性並動態創建放置遠程內容所需的div。只需在您想通過AJAX加載的任何鏈接上放置data-toggle =「ajaxModal」即可。
JS部分:
$('[data-toggle="ajaxModal"]').on('click',
function(e) {
$('#ajaxModal').remove();
e.preventDefault();
var $this = $(this)
, $remote = $this.data('remote') || $this.attr('href')
, $modal = $('<div class="modal" id="ajaxModal"><div class="modal-body"></div></div>');
$('body').append($modal);
$modal.modal({backdrop: 'static', keyboard: false});
$modal.load($remote);
}
);
最後,在遠程內容,你需要把整個結構的工作。
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title"></h4>
</div>
<div class="modal-body">
</div>
<div class="modal-footer">
<a href="#" class="btn btn-white" data-dismiss="modal">Close</a>
<a href="#" class="btn btn-primary">Button</a>
<a href="#" class="btn btn-primary">Another button...</a>
</div>
</div><!-- /.modal-content -->
</div><!-- /.modal-dialog -->
這就是我現在正在做的,除了我的方式有一個modal_create_head和modal_create_foot函數,然後我拋出之間的任何Ajax返回。我認爲這會比在ajax框中加載html更快,因爲你的.js文件將被客戶端緩存並繼續重用它,不是嗎?爲什麼人們加載.html而不是返回Json或Text或HTML中的所有html代碼,是否更快加載HTML? –