UIの使用:バインダ。jQuery + GWTチェックボックスステータスの設定
チェックボックスは、次のように実装されています:
<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設定することはできませんので。同時にフィールドとIDを。
私は
動作しませんでした@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はちょっと奇妙で、2つのチェックボックス要素で構成されているようです。 jQueryオーバーレイを削除すると、元の(正しくチェックされた)要素が表示されます。
setValueのは、基本的にsetCheckedと同じであるが、すでに当然の(チェックボックスなどれるinputElement)ことを試してみました。ここで問題となるのは、jQueryはGWTの内部チェックボックスをjQueryのHTML/CSSである程度オーバーライドしているようです。したがって、setValueメソッドは画面に正しく表示されません。 –