ajax如何给label赋值,如何让AjaxEditableLabel显示TextField?
AjaxEditableLabel task = new AjaxEditableLabel("task", new PropertyModel(getModel(), "task"));
現在我所要做的是在一定條件下這個AjaxEditableLabel將呈現為TextField。默認情況下,它呈現為Label。如果模型String任務為空或空白,則AjaxEditableLabel將為TextField,否則將為Label。
可能嗎?
謝謝。
編輯:
AjaxEditableLabel task = new AjaxEditableLabel("task", new PropertyModel(getModel(), "task")) {
private static final long serialVersionUID = 40L;
private TextField editor;
protected FormComponent newEditor(MarkupContainer parent, String componentId, IModel model) {
editor = (TextField) super.newEditor(parent, componentId, model);
Object modelObject = getDefaultModelObject();
if (modelObject == null || "".equals(modelObject)) {
editor.setVisible(true);
} else {
editor.setVisible(false);
}
return editor;
}
protected WebComponent newLabel(MarkupContainer parent, String componentId, IModel model) {
Label label = (Label) super.newLabel(parent, componentId, model);
if (editor.isVisible()) {
label.setVisible(false);
}
return label;
}
};
總結
以上是生活随笔為你收集整理的ajax如何给label赋值,如何让AjaxEditableLabel显示TextField?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 小程序服务器七牛云,基于七牛云 API
- 下一篇: 账户系统db服务器为创建快照,Mysql