[英]Load scripts in bootstrap modal when getting fragment of page
我正在获取页面的片段并加载自举模式。
这个页面片段包含加载谷歌地图所需的jQuery,但是当模态加载内容时,所有脚本都被剥离,因此随后不会加载地图。
即使我直接在modal-body类中插入脚本,它们仍然会被剥离。
对此有解决方法吗?
我们目前用来触发模式的是: -
<a href="/stores .topclass" data-target="#StoresModal" data-toggle="modal">Launch demo modal</a>
如果需要准确回答,我可以提供进一步使用的代码。
===编辑:根据要求提供更多代码使用...
所以我们包括一个触发bootstrap模式的全站点链接。 触发模态的链接可以在上面看到, 这里是与模态相关的其余代码 。
我们希望在模式中加载的只是/stores
页面的一个片段, 这里可以看到加载到此URL的所有代码。 但是,从这个页面来看,我们只是希望在第192行上加载.modal-container内的所有内容,但是由于必要的脚本位于同一个文件中的div之外,我们在尝试加载模态时不会捕获它。 所以以前,我们的模态触发器看起来像: -
<a href="/stores .modal-container" data-target="#StoresModal" data-toggle="modal">Launch demo modal</a>
这导致我们尝试将整个文件内容包装在div中,并将其内容作为模式中的页面片段调用,以便我们可以提取加载#map_canvas所需的必要脚本,但是,所有脚本都被删除了模态。 。
希望这可以更好地解释我们想要实现的目标。
===编辑2:我们实际上通过解决方法解决了这个问题,但这是一项庞大的工作,所以我会尽快发布答案......
我正在使用以下代码加载有关boostrap模式的视图:
$('[data-toggle="modal"]').click(function(e) {
e.preventDefault();
var url = $(this).attr('href');
if (url.indexOf('#') == 0) {
$(url).modal('open');
} else {
$.get(url, function(data) {
$(data).modal();
}).success(function() { $('input:text:visible:first').focus(); });
}
});
使用以下触发器:
<a href="new" role="button" data-backdrop="static" data-keyboard="false" class="btn btn-success" rel="tooltip" data-placement="top" title="text here" data-toggle="modal" alt="text here"><i class="icon-plus icon-white"></i> </a>
通过使用此方法,您将确保在显示模式时将加载所有脚本。 这只是我发现正确显示我的模态的工作。
我必须在我的表单( new.html )上显示的所有内容都将完美显示。
因此,我建议您在与/stores
相对应的页面上将所有重新发布的代码放入Google Map
。
编辑你的触发器应该是:
<a href="/stores" class="topclass" data-target="#StoresModal" data-toggle="modal">Launch demo modal</a>
代替 :
<a href="/stores .topclass" data-target="#StoresModal" data-toggle="modal">Launch demo modal</a>`
EDIT2
我看到的问题是,你的模态包含没有得到JS文件,因为它们不在你的包含部分。 我不是PHP专家,但您可以尝试以下选项:
选项1 (不是很干净)
您可以在<div class="modal-container"></div>
添加<script>Google Map required JS File</script>
标记,但是您将获得相同JS文件的重复标记。
选项2 (可能吗?)
创建新文件并使用所需的JS文件添加<div class="modal-container"></div>
。
通过包含新文件替换第192行,并通过传递当前商店对象来调用模态,以便在模态中显示您的信息。
如果有帮助,请告诉我。
StackOverflow改变了你的代码吗?
<a href="/stores .topclass" data-target="#StoresModal" data-toggle="modal">Launch demo modal</a>
你有href中的classname吗? 这可能是问题的一部分。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.