Jquery 在BootstrapDialog中打开html页面
在我的Spring projet中,我有一个导航栏,其中有以下链接:Jquery 在BootstrapDialog中打开html页面,jquery,twitter-bootstrap,bootstrap-dialog,Jquery,Twitter Bootstrap,Bootstrap Dialog,在我的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" dat
<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>
为此,我需要三件事:
1) 在javascript变量中加载文件内容
2) 从标记捕获页面标题并用作窗口标题
3) 从页面中捕获“正文”部分并用作窗口的消息
我试试这个:
$("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
});
}
有人知道我最终如何能够捕获和处理目标页面的de内容吗?您可以尝试在引导模式中使用iframe或类似的东西。由于异步负载,请尝试使用回调。大概是这样的:
$("#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
});
})
什么是负载(url);方法?可能是代码的错误之一。我以前使用过这个函数:$(“content”).load(url)。这里我想要的是读取html文件的内容并保存在变量中。如何仅通过调用页面的
name&body
,在没有代码的情况下加载整个html页面?var元素=“”$(element.attr('something');//返回'something other'
什么类型的元素由'data'表示?我应该把它放在页面的哪个位置?属性id='data'的任何元素
TypeError: $(...).attr(...) is undefined
$("#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
});
})