我正在尝试禁用内部的小门中的AjaxLink
按钮public void onClick(AjaxRequestTarget target)
方法;我尝试直接致电setEnabled(false)
,但没有成功。我在网上看到的一些建议说要调用isEnabled() or onConfigure()
方法;但是这些不能在onclick
方法内部实现;有什么帮助吗?
{
buttonlabel.setDefaultModel(Model.of("Creating EWL"));
target.add(buttonlabel);
buttonlabel.setOutputMarkupPlaceholderTag(true);
boolean isWorkItemCreated = NewRecruitEWLUtil.createNewRecruitWorkItem(appInfo);
if (isWorkItemCreated)
{
buttonlabel.setDefaultModel(Model.of("EWL Created"));
target.add(buttonlabel);
buttonlabel.setOutputMarkupPlaceholderTag(true);
setEnabled(false);
target.add(this);
System.out.println("setEnabled ..." + isEnabled());
}
}
setEnabled(false)
是正确的方法!您还需要将AjaxLink添加到AjaxRequestTarget以便在浏览器中重新绘制:
AjaxLink link = new AjaxLink("myLink") {
@Override
public void onClick(AjaxRequestTarget target) {
setEnabled(false);
target.add(this);
}
};
add(link);
link.setOutputMarkupId(true);