0
확인란을 선택하면 필수 입력 필드로 토글하려는 텍스트 필드가 있습니다. ValueChangeEventListener를 멋지게 재생할 수 없습니다.확인란 선택시 텍스트 필드 토글 필요/불필요 선택
는private TextField myTextField = new TextField("Name");
myTextField.setRequired(true);
private CheckBox myCheckBox;
myCheckBox = createCheckBox();
private CheckBox createCheckbox() {
CheckBox checkBox = new CheckBox("My checkbox");
checkBox.setImmediate(true);
checkBox.addValueChangeListener(new ValueChangeListener() {
@Override
public void valueChange(ValueChangeEvent event) {
toggleRequired();
}
});
return checkBox;
}
private void toggleRequired() {
if (myCheckBox.getValue() != true) {
myTextField.setRequired(false);
} else {
myTextField.setRequired(true)
}
}
valueChangeListener는 너무 많은 시간이 true로 다시 true에서 false로가는 트리거됩니다 :
이것은 내가 지금까지있는 것입니다. 내가 여기서 뭘 잘못하고 있는지 정말 잘 모르겠다.
고맙습니다.
이'else' 분기'myTextField.setRequired를 읽을해야 진정한 : 내가 변경 한 모든
내가 대신 몇 가지 다음과 같은 속성 클래스를 참조하고 매우 쉬운 솔루션이었다); 대신'myCheckBox.setRequired (true)'? 아마도 간단하게하기 위해'myTextField.setRequired (myCheckBox.getValue());'라고 쓸 수 있습니다. – Morfic
지적 해 주셔서 고맙습니다. 그 오타입니다. 나는 질문을 편집 할 것입니다! – Tkingovr