Привязка к элементам HTML в GWT - PullRequest
6 голосов
/ 25 сентября 2010

Я пытаюсь выяснить, как связать событие javascript с элементом select в GWT, однако элемент select не создается в GWT, а исходит из HTML, который я собираю с другого сайта (отчет сайт из другого отдела). Для начала немного подробнее:

Я использую GWT и при загрузке выполняю ajax-вызов для получения некоторого HTML-кода, который включает, помимо прочего, отчет, который я хочу разместить на своей странице. Я могу получить HTML и разобрать интересующий меня div. Это легко отобразить на моей странице.

Вот где я застреваю: на той части страницы, которую я использую, есть элемент select, который я могу легко найти (он имеет идентификатор), но хотел бы захватить событие, если мой пользователь изменит это значение (я хотите зафиксировать изменения в поле выбора, чтобы я мог выполнить другой вызов ajax, чтобы заменить отчет, связать его с выбором на этой странице и снова запустить весь процесс).

Итак, я не уверен, как, как только я получу HTML с удаленного сайта, как привязать обработчик события к входу в этом фрагменте, а затем вставить этот фрагмент в мой целевой div. Любой совет или указатели будут с благодарностью!

1 Ответ

9 голосов
/ 27 сентября 2010

Как насчет этого:

Element domSelect = DOM.getElementById("selectId");
ListBox listBox = ListBox.wrap(domSelect);
listBox.addChangeHandler(new ChangeHandler() {
    void onChange(ChangeEvent event) {
        // Some stuff, like checking the selected element
        // via listBox.getSelectedIndex(), etc.
    }
});

Вы должны получить общее представление - обернуть элемент <select> в ListBox. Оттуда, это просто вопрос добавления ChangeHandler с помощью метода addChangeHandler.

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