在我的Spring projet中,我有一个导航栏,我有以下链接:
<div class="navbar navbar-inverse navbar-fixed-top" role="navigation">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="#">LigaDesportiva</a>
</div>
<div class="collapse navbar-collapse">
<ul class="nav navbar-nav">
<li><a href="clube.html">Clubes</a></li>
<li><a href="dirigente.html">Dirigentes</a></li>
<li><a href="jogadore.html">Jogadores</a></li>
<li><a href="liga.html">Ligas</a></li>
<li><a href="usuario.html">Usuários</a></li>
</ul>
<ul class="nav navbar-nav navbar-right">
<li class="dropdown"> <a class="dropdown-toggle" data-toggle="dropdown">${usuario.nome} <b class="caret"></b></a>
<ul class="dropdown-menu">
<li><a href="usuario_perfil.html">Perfil</a></li>
<li><a href="usuario_historico.html">Histórico</a></li>
<li><a href="logout.html">Sair</a></li>
</ul>
</li>
</ul>
</div><!--/.nav-collapse -->
</div>
</div>
我需要在BootstrapDialog中打开每个链接,如下所示,可在网站http://www.jqueryrain.com/?iFhFXJv3中找到:
BootstrapDialog.show({
title: 'Draggable Dialog',
message: 'Try to drag on dialog title to move your dialog.',
draggable: true
});
为此,我需要三件事:
1)在javascript变量中加载文件的内容 2)从标签中捕获页面的标题,并用作窗口的标题 3)抓住身体&#39;页面中的部分并用作窗口的消息
我试试这个:
$("a").click(function(){
var url = $(this).attr("href");
var destino = load(url);
var title_page = $(destino).filter("title").text();
var message_page = $(destino).filter("body").text();
BootstrapDialog.show({
title: $(title_page),
message: $(message_page),
draggable: true
});
});
但是不能工作。我做错了什么?浏览器的控制台不会显示任何错误,但页面不会在对话框中打开。
更新
我更改了用于此的代码,但仍然无法正常工作。
function load_page(url) {
var responseText = '<div></div>';
$(responseText).load(url);
var title_text = $(responseText).attr("title").text();
var message_text = $(responseText).attr("body").text();
BootstrapDialog.show({
title: $(title_text),
message: $(message_text),
draggable: true
});
}
但是在浏览器(Firefox)的控制台中,当我点击链接时会显示此错误:
TypeError: $(...).attr(...) is undefined
有人知道我最终能够捕获和处理目标页面的内容吗?
答案 0 :(得分:0)
您可以尝试在引导模式中使用iframe或类似的东西。
答案 1 :(得分:0)
尝试使用异步加载来回调。像这样:
$("#data").load(url, function(responseText, textStatus, XMLHttpRequest){
console.log(responseText);
var title_page = responseText.filter("title").text();
var message_page = responseText.filter("body").text();
BootstrapDialog.show({
title: $(title_page),
message: $(message_page),
draggable: true
});
})