2012-09-09 63 views
5

比方说,我有以下链接是由循环生成X次的。通过模态加载动态URL

<a class="btn" data-toggle="modal" data-target="#view_more" href="/item/view/<?php echo $item_id; ?>">Launch Modal</a> 

这里是启动模式的JS脚本。

$(document).ready(function() { 
    $('#view_more').modal({ 
     remote: '/item/view/1', 
     show:false 
}); // Start the modal 

它的工作原理,当remote网址是硬编码的,但我想这取决于被传递给它,它是动态的。

回答

9

模态插件执行它的构造函数中load()方法,所以真的改变模态的远程内容(除手工做AJAX自己)在做另一个呼叫之前摧毁它的唯一途径:

$('#view_more') 
    .removeData('modal') 
    .modal({ 
    remote: someURL, 
    show: false 
    }); 

回复一个相似的帖子中有更多的细节:Twitter bootstrap remote modal shows same content everytime

+0

好的,但我如何将正确的URL传递到'remote'字段?如果我有多个链接,他们都会调用各自的URL。 – luckytaxi

+1

如果你在锚的'href'属性中包含了远程URL,模式插件将在初始化时自动将它们用作'remote'值。问题在于,您需要每次销毁模态对象以使其重新初始化后续点击。我在链接到的其他答案中提出的选项是在** hidden **事件被触发时销毁模态对象。 – merv

+0

我明白了,我没有意识到'href'会自动通过。您的解决方案完美无缺,谢谢! – luckytaxi