2 つの GWT-RadioButton に同じグループ名を使用しています。これらの 1 つをクリックすると、別の 1 つがオフになります。これは良いことです。しかし、プログラム的に(デバッグするとき)、他のラジオボタンの値はまだ 'true' のままです。私の要件によれば、それは偽でなければなりません。GWT-RadioButton Group のコンセプトの問題だと思っています。
GWT - RadioButton のこの問題はありますか?
以下はコードスニペットです
indiaRadioBtn.setValue(true);
indiaRadioBtn.addClickHandler(new IndianRadioClickHandler());
othersRadioBtn.addClickHandler(new InternationalRadioClickHandler());
if (contactInfo != null) {
if (contactInfo.getPostalAddress().getCountry() != null) {
othersRadioBtn.setValue(true);
}
if (indiaRadioBtn.getValue()) {
index = -1;
for (StateOrProvince stateOrProvince : StateOrProvince.values()) {
index++;
if ((contactInfo.getPostalAddress().getState() != null)
&& contactInfo.getPostalAddress().getState().equals(stateOrProvince.name())) {
stateListBox.setSelectedIndex(index);
}
}
} else {
//some code }
class IndianRadioClickHandler は ClickHandler を実装します {
@Override
public void onClick(ClickEvent event) {
//newOrUpdateContactInfoFormPanel.clear();
ContactInfo contactInfo = getSelectedContactInfo();
/**
* Used same panel and elements for both addresses, so clearing address for Indian.
*/
if (contactInfo != null) {
if (contactInfo.getPostalAddress().getCountry() != null
|| title.equals("Create New Address")) {
contactInfo = null;
}
}
newOrUpdateContactInfoFormPanel.add(getCompleteFormPanel(contactInfo));
}
}
if contactInfo != null then it is executing that loop, i am setting othersRadioBtn.setValue(true);
したがって、グループの概念に従って、他のラジオボタンをfalseに設定する必要があります..しかし、それはその仕事をしていません。