繁体   English   中英

隐藏DOJO中的对话框

[英]Hide a dialog from DOJO

对不起我的英语不好。 在我的程序中,存在客户端-服务器通信(JSP-Servlet)。 将数据发送到服务器后,将显示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> 

我怎么解决这个问题? 我提前谢谢你。 教育

就像Philippe所说的那样,您可能正在返回错误。 添加错误功能以处理错误

 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             

        }

    }, function (error) {
        dialogStats.hide();

    });

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM