JQuery を使用してポップアップ ウィンドウを開いて、選択した画像を表示したいと考えています。画像は、順序付けられていないリストのリンク タグでラップされています。ある時点でいくつかのナビゲーションが追加されるので、ダイアログは適切ではないと思います。これが私がこれまでに持っているコードです:
メインページ:
<script>
$('.ImageManager').click(function (event) {
event.preventDefault();
window.open($(this).attr("href"), "popupWindow", "width=600, height=400, scrollbars=yes");
});
</script>
<a href="/image-manager" class="ImageManager">Add Image</a><br />
<ul id="imagelist">
</ul>
ポップアップウィンドウ:
<script>
$(function() {
$(".addimage").click(function() {
$("#imagelist", opener.document).append("<li></li>");
return false;
});
});
</script>
<ul>
% for image in images:
<li><a href="" class="addimage"><img src="/static/images/{{ image }}" alt="" /></a></li>
% end
</ul>
私が抱えている最初の問題は、ポップアップが開かないことです。現在のブラウザー ウィンドウで画像マネージャーを開くだけです。両方のページの head セクションで参照されている JQuery があり、他の JQuery コードで動作します。
次に、プレーンな Javascript を使用してポップアップを開こうとしましたが、クリックした画像リンクを取得して画像ファイル名をオープナー ウィンドウに追加できず、その後ポップアップが閉じませんでした。
ポップアップを機能させることができる場合、ポップアップ内の画像がクリックされたときに渡される {{ image }} 変数 (Python ボトル テンプレート変数) を渡すにはどうすればよいですか?