我目前正在获取页面片段并加载bootstrap模式。
此页面片段包含加载Google地图所需的jQuery,但是当模态加载内容时,所有脚本都会被剥离,因此随后不会加载地图。
即使我直接在modal-body类中插入脚本,它们仍然会被剥离。
根本没有解决方法吗?
我们目前用于触发模式的是: -
<a href="/stores .topclass" data-target="#StoresModal" data-toggle="modal">Launch demo modal</a>
如果需要准确回答,我可以提供进一步使用的代码。
===编辑:根据请求提供更多代码...
所以我们要包含一个触发bootstrap模式的全站点链接。触发模态的链接可以在上面看到here is the rest of the code in relation the modal。
我们希望在模式中加载的只是/stores
页面的一个片段,可以看到在此URL加载的所有代码here。但是,从这个页面来看,我们只是希望在第192行上加载.modal-container内的所有内容,但是由于必要的脚本位于同一个文件中的div之外,我们在尝试加载模态时不会捕获它。所以以前,我们的模态触发器看起来像: -
<a href="/stores .modal-container" data-target="#StoresModal" data-toggle="modal">Launch demo modal</a>
这导致我们尝试将整个文件内容包装在div中,并将其内容作为模式中的页面片段调用,以便我们可以提取加载#map_canvas所需的必要脚本,但是,所有脚本都被删除了模态...
希望这可以更好地解释我们想要实现的目标。
===编辑2:我们实际上通过解决方法解决了这个问题,但这是一项庞大的工作,所以我会尽快发布答案......
答案 0 :(得分:0)
我正在使用以下代码加载有关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 )都会完美展示。
因此,我建议您在Google Map
对应的页面上将所有重新发送的代码添加到/stores
。
修改强> 你应该触发:
<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专家,但您可以尝试选择:
Option1 (不是很干净)
您可以在<script>Google Map required JS File</script>
中添加<div class="modal-container"></div>
标记,但您将获得相同JS文件的重复标记。
Option2 (可能吗?)
创建新文件并添加包含所需JS文件的<div class="modal-container"></div>
部分。
通过包含新文件来替换第192行,并通过传递当前商店对象来调用模态,以便在模态中显示您的信息。
如果有帮助,请告诉我。
答案 1 :(得分:0)
StackOverflow是否更改了您的代码?
<a href="/stores .topclass" data-target="#StoresModal" data-toggle="modal">Launch demo modal</a>
你有href中的classname吗?这可能是问题的一部分。