我有带有两个输入文本的 hml 表单
<input type="text" wicket:id = "query"/>
<input type="text" wicket:id= "address"/>
我需要实现选择机制。当有人开始编写查询时,应该禁用地址,反之亦然。
向侦听 onChange 事件的查询文本字段添加行为。在onEvent
方法中禁用地址文本字段并将其添加到 ajax 请求目标。
请参阅此示例如何添加行为以及如何禁用其他组件。请记住,如果必须启用或禁用其他组件,您可能会添加一些检查。
queryTextField.add(new AjaxEventBehavior("onKeyUp") {
@Override
protected void onEvent(AjaxRequestTarget target) {
addressTextField.setEnabled(false);
target.add(addressTextField);
}
}
);
您可以使用:
myTextField.add(AttributeModifier.replace("readonly", "readonly"));
当然,"readonly"
应该根据你的代码上的一些标准来确定。
当通过 JavaScript 触发 onKeyUp 事件时,我会向两个字段添加一个禁用/启用另一个字段的行为。