禁用wicket中的输入文本

时间:2012-04-23 14:10:59

标签: java wicket

我有两个输入文本的html表单

<input type="text" wicket:id = "query"/> 
<input type="text" wicket:id= "address"/>

我需要实现选择机制。当有人开始编写查询时,地址应该被禁用,反之亦然。

3 个答案:

答案 0 :(得分:6)

向侦听onChange事件的查询文本字段添加行为。在onEvent方法中,禁用地址文本字段并将其添加到ajax请求目标。

请参阅此示例,了解如何添加行为以及如何禁用其他组件。请记住,如果必须启用或禁用其他组件,您可以添加一些检查。

queryTextField.add(new AjaxEventBehavior("onKeyUp") {
        @Override
        protected void onEvent(AjaxRequestTarget target) {
            addressTextField.setEnabled(false);
            target.add(addressTextField);        
        }
    }
);

答案 1 :(得分:4)

您可以使用:

myTextField.add(AttributeModifier.replace("readonly", "readonly"));

当然,"readonly"应根据代码的某些条件确定。

答案 2 :(得分:1)

我会在两个字段中添加一个行为,当通过JavaScript触发onKeyUp事件时,该行为会禁用/启用其他字段。