私は自分自身を jQuery/javascript の専門家とは絶対に思っていませんが、十分なプログラミングを知っていますが、このプロジェクトで、jQuery UI が 2 番目のダイアログを初期化できないという問題に遭遇しました。それぞれを初期化する前にテストする if ステートメントが 2 つありますが、最初の if ステートメントだけが有効になっているようです。
$(document).ready(function(){
// 通常のダイアログ ボックス
$("#dialog").dialog({autoOpen: false, modal: true});
$("#dialog_link").click(関数(){
$("#dialog").dialog("開く");
false を返します。
});
// 確認ボックス
if($.cookie("modal_confirm").length > 0 && $.cookie("modal_confirm")!="") {
$("body").prepend(''+$.cookie("modal_confirm")+'');
var g = $("#confirm");
g.html( g.html().replace(/\+/g," ") );
$("#confirm").dialog({
モーダル: 真、
スタック: 真、
ボタン: {
'OK': function() { window.location.replace($.cookie("confirmGo"))); (これ).dialog('閉じる'); }、
キャンセル: function() { $(this).dialog('close'); }
}、
close: function(){ $.cookie("modal_confirm",null); $.cookie("confirmGo",null);}
});
}
//アラートボックス
if($.cookie("alert").length > 0 && $.cookie("alert")!="") {
$("body").prepend(''+$.cookie("alert")+'');
var f = $("#alert");
f.html( f.html().replace(/\+/g," ") );
$("#alert").dialog({modal: true, stack: true, buttons: {'OK': function() {$(this).dialog('close');}}, close: function() { $.cookie("アラート",null); }});
}
});
この場合、確認が開いている間、アラートモーダルは開きません。確認の前に移動すると、アラートは開きますが、確認は開きません。これは jQuery UI の問題ですか? もしそうなら、回避策はありますか?
助けてください、事前に感謝します。