Использование пользовательского интерфейса: Binder.
Флажки реализованы следующим образом:
<div data-role="fieldcontain">
<fieldset data-role="controlgroup">
<input type="checkbox" ui:field="uniqueID" class="custom" />
<label for="uniqueID"><ui:text from="{res.text}"></ui:text></label>
</fieldset>
</div>
и checkboxNewsletter.setId("uniqueID");
, потому что, к сожалению, вы не можете установить поле и идентификатор ui: одновременно.
Я пытался установить флажки с
@UiField InputElement checkbox;
checkbox.setChecked(true);
, который не работал.Поэтому я попробовал JSNI получить прямой доступ к jQuery-JS:
public static native void setCheckBoxStatus(String id, Boolean isChecked)/*-{
$wnd.jQuery('input[name='+id+']').attr('checked', isChecked);
}-*/;
... что не получилось намного лучше.
У кого-нибудь есть идеи, как это решить?Кажется, jQuery отменяет флажок GWT;сгенерированный HTML выглядит довольно странно и, кажется, состоит из двух элементов-флажков.Вы можете увидеть оригинальный (и правильно проверенный) элемент при удалении наложения jQuery.