0

我有一个 Wicket DropDownChoice,我试图避免使用 Ajax 方法。选择一个值后,我希望选择是只读的,用户不能再次更改它。

final DropDownChoice<Pet> dropdown = new DropDownChoice<Pet>("dropdown",
                new PropertyModel<Pet>(this, "selected"), list, choiceRenderer) {
// code here
}
4

3 回答 3

0

如果不使用 Ajax 或 jQuery,似乎不可能将下拉菜单设为“只读”。我对此不满意,我会找到替代解决方案。无论如何谢谢你的帮助

于 2018-12-04T16:10:39.607 回答
0

尝试使用属性修饰符将为您做到这一点

dropdown.add(new AttributeModifier("disabled", "true"); 
于 2018-12-06T05:48:29.150 回答
0

如果您想避免使用 Ajax(即使用 Wicket)使其成为只读,那么您应该使用自定义 JavaScript 来实现。例如使用 jQuery:

jQuery('#petDropdown').change(jQuery(this).attr('disabled', 'disabled'));

disabled="disabled"在第一个更改事件上将属性设置为 HTMLSelectElement。

于 2018-12-04T08:27:50.783 回答