私の英語でごめんなさい。私のプログラムには、クライアント/サーバー通信 (JSP - サーブレット) があります。データがサーバーに送信されると、「お待ちください...」というメッセージのダイアログ Dojo が表示されます。それはうまくいきます。ただし、回答が届いた場合、このダイアログは非表示にする必要があります。
dialogStats.hide(); で試してみます。これは動作しません。答えが隠されているのではなく、会話が隠されています。おそらくdialogStatsにアクセスできません。
コード:
<script>
require(["dojo/dom",
"dojo/on",
"dojo/request",
"dojo/dom-form",
"dojo/json",
"dojox/json/query",
"dijit/Dialog",
"dijit/form/Button",
"dojo/domReady!"],
function(dom, on, request, domForm, json, dialog, button){
var form = dom.byId('aktForm');
on(form, "submit", function(evt){
evt.stopPropagation();
evt.preventDefault();
var dialogStats = new dijit.Dialog({
title: "Blah",
style: "width:500px;",
content: "<p />Please wait ..." +
"<p /><div style=\"align:center; display:block; margin:0px auto; width:100px\"> " +
"<img src=\"bilder/loading.gif\" border=\"0\"></div><p />"
});
dialogStats.show();
request.post("StatsServlet", {
data: domForm.toObject("aktForm"),
handleAs: "json"
}).then(function(response){
dialogStats.hide();
var fehler = dojox.json.query("fehlermeldung", response);
if(fehler == ""){
// everything is ok
}
else {
// error
}
});
});
});
</script>
どうすればこの問題を解決できますか? よろしくお願いします。教育