2013-07-30 4 views
0

Извините за мой английский. В моей программе есть связь клиент-сервер (JSP-Servlet). Когда данные отправляются на сервер, появляется диалоговое окно Dojo с сообщением «Please wait ...». Это работает. Но если ответ приходит, этот диалог должен быть скрыт.Скрыть диалог от 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> 

Как я могу решить эту проблему? Я благодарю вас заранее. edu

+0

Пробовали ли вы поставить точку останова на dialogStats.hide() и этап отладки в него? Прежде всего я предполагаю, что ваш пост возвращает ошибку, а не удачный ответ. – Philippe

+0

Привет, Филипп, да, это была ошибка, а не удачный ответ. Я очень благодарю вас. Edu – Eduardo

ответ

1

Как сказал Филипп, Вероятно, вы вернулись к ошибке. Добавить функцию ошибки для обработки ошибки

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(); 

    }); 
+0

Привет, я добавил функцию ошибки. Спасибо. – Eduardo

Смежные вопросы