私は自分のjQueryで漬物を食べています。状況は次のとおりです。ページをロードしています (メイン ページ)。特定の要素をクリックすると、div が開き、別のページ (page1) がロードされます。このロードされたページ内に、別のロードされたページ (page2) を含むダイアログを開くボタンがあります。
これはすべて、一度だけ正常に機能します。ダイアログを閉じると、ページ1のボタンをクリックしても再び表示されません。
インターウェブを検索しましたが、解決策が役に立ちません。ここで何が間違っているのかわかりません。これは非常に一般的な問題ですが、コードは正しいようですよね?
これは私のコードです(とにかく便利な部分です):
<script>
$(document).ready(function(e) {
$("#editdialog").dialog({
autoOpen: false,
width: 400,
height: 600,
});
$(".editfreight").one("click", function(){
$("#editdialog").load("inc/ajax/editfreight_ajax.php?id=" + $(this).data("freight"));
$("#editdialog").dialog("open");
});
});
</script>
<div id="editdialog" style="display: hidden"></div>
さて、誰かがここで私を助けてくれることを願っています! 私もこれを試しました:
$(".editfreight").one("click", function(){
$("#editdialog").dialog({
autoOpen: false,
width: 400,
height: 600,
close: function() {
$("#editdialog").dialog("destroy")
});
$("#editdialog").load("inc/ajax/editfreight_ajax.php?id=" + $(this).data("freight"));
$("#editdialog").dialog("open");
)};
このようにして、ボタンをクリックすると(ページロードではなく)ダイアログを開始し、ダイアログを閉じるとインスタンスを破棄すると考えました。どうやらこれも機能していないようです。