GWT / JAVA - Получение вызова AJAX в диалоговом окне - PullRequest
0 голосов
/ 29 июля 2010

Я новичок в GWT, и у меня проблема с получением результата вызова AJAX для отображения в моем диалоговом окне.

Я настроил свое диалоговое окно, Vpanel и метку ответа здесь:

   VerticalPanel eventDetailWindow = new VerticalPanel();

   final DialogBox dialogBox2 = new DialogBox();
   dialogBox2.setText("Event Detail");
   dialogBox2.setAnimationEnabled(true);

   final HTML serverResponse3 = new HTML("<b> ok, this is working</b>");
   serverResponse3.addStyleName("detailView");

   eventDetailWindow.add(serverResponse3);
   eventDetailWindow.addStyleName("detailWindow");
   dialogBox2.setWidget(eventDetailWindow);
   RootPanel.get("detailWindow").add(eventDetailWindow);

Затем в методе onSuccess у меня есть это:

dialogBox2.setText("Remote Procedure Call");
serverResponse3.setHTML(result);
dialogBox2.center();
closeButton.setFocus(true);

Однако,при запуске ответ отображается на странице, а не в диалоговом окне, и диалоговое окно пустое.Похоже, что он настроен так же, как стартовый проект - который отлично работает ..

Может кто-нибудь мне помочь ...?

Ответы [ 2 ]

2 голосов
/ 29 июля 2010

Не используйте RootPanel.get("detailWindow").add(eventDetailWindow); , если хотите добавить только в dialogBox2

используйте так:

dialogBox2.setWidget(eventDetailWindow);

и вам не нужно добавлять dialogBox2.show();, потому что dialogBox2.center(); этот код покажет dialogBox2 изначально.

package com.ex.client;

import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.DialogBox;
import com.google.gwt.user.client.ui.HTML;
import com.google.gwt.user.client.ui.RootPanel;
import com.google.gwt.user.client.ui.VerticalPanel;


public class Example implements EntryPoint {

public void onModuleLoad() {
        VerticalPanel eventDetailWindow = new VerticalPanel();

       final DialogBox dialogBox2 = new DialogBox();
       dialogBox2.setText("Event Detail");
       dialogBox2.setAnimationEnabled(true);

       final HTML serverResponse3 = new HTML("<b> ok, this is working</b>");
       serverResponse3.addStyleName("detailView");

       eventDetailWindow.add(serverResponse3);
       eventDetailWindow.addStyleName("detailWindow");
       dialogBox2.setWidget(eventDetailWindow);
       Button b= new Button("click");
       b.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            dialogBox2.setText("Remote Procedure Call");
            serverResponse3.setHTML("result");
            dialogBox2.center();
        }
    });

       RootPanel.get().add(b);

  }
}
0 голосов
/ 29 июля 2010

Вы добавляете eventDetailWindow к чему-то на странице, и я не вижу звонка на .show() в DialogBox.Вы можете опубликовать свой полный код?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...