私のSpringプロジェクトには、次のリンクがあるナビゲーションバーがあります:
<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>
サイトhttp://www.jqueryrain.com/?iFhFXJv3で入手できる、以下のような BootstrapDialog で各リンクを開く必要があります。
BootstrapDialog.show({
title: 'Draggable Dialog',
message: 'Try to drag on dialog title to move your dialog.',
draggable: true
});
このためには、次の 3 つのものが必要です。
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
});
}
しかし、ブラウザー (Firefox) のコンソールで、リンクをクリックするとこのエラーが表示されます。
TypeError: $(...).attr(...) is undefined
ターゲットページのコンテンツを最終的にキャプチャして処理できる方法を知っている人はいますか?