私はフォームとデータで使用するDojoでカスタムの基本ライトボックスを作った。画像などを扱っているわけではありません。Dojoライトボックスの問題
私が直面しているような問題はこれです。 DojoがAJAXを介してajaxtb.phpに特定のコードなどを使用してコールすると、 ?f = loginまたは?f =ページがロードされていることを登録します。ライトボックスを閉じて別の言い方を試してみると、ライトボックスにはそれ以前の状態が表示されますか?f =ログインするか、これまでのところ、?f = stuffが読み込まれるまで表示されます。
ライトボックスのコードもありますが、現時点ではかなり冗長で非常に基本的なので、最適化する方法を教えてください。
dojo.ready(function(){
#loads logout confirmation
dojo.query("#jsLogoutPromp").connect("onclick", function(){
dojo.byId("qpbox-title-text").innerHTML = "Logout Confirmation";
dojo.query("#qpbox-content").style("display", "block");
dojo.query("#qpbox-overlay").style("display", "block");
dojo.xhrGet({
url: "ajaxtb.php?f=logout",
load: function(newContent) {
dojo.byId("utm").innerHTML = newContent;
},
// The error handler
error: function() {
// Do nothing -- keep old content there
}
});
});
#loads options to upload profile photo
dojo.query("#jsUserPhotoPromp").connect("onclick", function(){
dojo.byId("qpbox-title-text").innerHTML = "Upload Photo";
dojo.query("#qpbox-content").style("display", "block");
dojo.query("#qpbox-overlay").style("display", "block");
dojo.xhrGet({
url: "ajaxtb.php?f=display_pic",
load: function(newContent) {
dojo.byId("utm").innerHTML = newContent;
},
// The error handler
error: function() {
// Do nothing -- keep old content there
}
});
});
#closes everything when clicked well technically hides everything
dojo.query("#qpbox-close").connect("onclick", function(){
dojo.query("#qpbox-content").style("display", "none");
dojo.query("#qpbox-overlay").style("display", "none");
});
#shows up for logout only, same as above code, but does not work since the original id is included in ajax.php?f=logout
dojo.query("#qpbox-stay").connect("onclick", function(){
dojo.query("#qpbox-content").style("display", "none");
dojo.query("#qpbox-overlay").style("display", "none");
});
});
すべてをクローズする機能は、qpbox-closeおよびqpbox-stayです。技術的には、両方ともライトボックスを隠すことができません。もう一つの問題はqpbox-stayです。 qpbox-stay idはajax.php?f = logoutにあり、クリックするとライトボックスが閉じないので、問題は何か分からない。ここ
は、あなたはすべてのコンテンツを削除するには、ライトボックスを表示する前にdojo.empty(dojo.byId('utm'))
を使用することができますajax.php
if($_GET['f'] == 'logout') {
echo '
<p>Are you sure you want to exit right now?</p>
<br>
<button type="submit">Logout</button> <a href="#meminipost" id="qpbox-stay" onClick="return false;" style="float: right;">No, I wana Stay</a>
';
}
おかげ