1
如何強制用戶從qooxdoo SelectBox中進行選擇?我希望SelectBox最初出現時有一個空的選擇(或者更好的是,「請選擇...」消息)。我希望表單驗證失敗,如果用戶沒有做出選擇,並且選擇框顯示爲紅色「無效」裝飾和「必需」工具提示,就像所需的textField一樣。如何製作qooxdoo中所需的SelectBox?
類似於RadioButtonGroup:有沒有辦法讓組最初出現時沒有選擇按鈕,並且在選擇之前不會變得有效?
後來......這似乎爲選擇框的情況下工作:
var genderSlct = new qx.ui.form.SelectBox();
genderSlct.add(new qx.ui.form.ListItem("")); // initially selected null item
genderSlct.add(new qx.ui.form.ListItem("Male", null, "M"));
genderSlct.add(new qx.ui.form.ListItem("Female", null, "F"));
...
myForm.getValidationManager().setValidator(function(items) {
var valid = true;
if (genderSlct.getSelection()[0].getModel() == null) {
genderSlct.setValid(valid = false);
genderSlct.setInvalidMessage("Please select your gender.");
}
...
if (valid) {
genderSlct.setValid(true);
...
return true;
} else {
return false;
}
});
後來還是...發現了一個RadioButtonGroup的解決方案,以及:
要獲得初始未選擇狀態,添加一個不可見的第一個listItem與null模型:
myRbg.add(new qx.ui.form.RadioButton("").set({
model: null, visibility: "excluded"
}));
然後添加相同的樣式的代碼作爲選擇框到表單驗證器。