如何根据具体情况禁用gwt.material.design.client.ui.MaterialLink?
我有这个问题,我用GWT准备了一个页面,禁用了Materialink 我的Java视图:如何根据具体情况禁用gwt.material.design.client.ui.MaterialLink?,gwt,material-design,gwt-material-design,Gwt,Material Design,Gwt Material Design,我有这个问题,我用GWT准备了一个页面,禁用了Materialink 我的Java视图: @UiField MaterialLink exportLink; my view.xml: <m:MaterialLink ui:field="exportLink" text="Esporta Report" addStyleNames="btn" target="_blank" float="RIGHT" enabled="false"/> 工作表现出色 当我试图禁用它时,因为
@UiField
MaterialLink exportLink;
my view.xml:
<m:MaterialLink ui:field="exportLink" text="Esporta Report" addStyleNames="btn" target="_blank" float="RIGHT" enabled="false"/>
工作表现出色
当我试图禁用它时,因为用户输入了错误的值
exportLink.setHref(null);
exportLink.setEnabled(false);
该按钮看起来正常,但可以单击它。
有什么建议吗?我找到了这个解决方案:
public class MyMaterialLink extends MaterialLink {
@Override
public void setEnabled(boolean enabled) {
super.setEnabled(enabled);
if(!enabled){
if (getElement().getAttribute("href") != null) {//per prevenire doppi disabled che cancellano l'href-disabled
getElement().setAttribute("data-href-disabled", getElement().getAttribute("href"));
getElement().removeAttribute("href");
}
}else {
getElement().setAttribute("href",getElement().getAttribute("data-href-disabled"));
getElement().removeAttribute("data-href-disabled");
}
}
@Override
public void setHref(String href) {
if(!isEnabled()){
getElement().setAttribute("data-href-disabled",href);
}else {
super.setHref(href);
}
}
我犯了固定的GMD。请随意查看。
public class MyMaterialLink extends MaterialLink {
@Override
public void setEnabled(boolean enabled) {
super.setEnabled(enabled);
if(!enabled){
if (getElement().getAttribute("href") != null) {//per prevenire doppi disabled che cancellano l'href-disabled
getElement().setAttribute("data-href-disabled", getElement().getAttribute("href"));
getElement().removeAttribute("href");
}
}else {
getElement().setAttribute("href",getElement().getAttribute("data-href-disabled"));
getElement().removeAttribute("data-href-disabled");
}
}
@Override
public void setHref(String href) {
if(!isEnabled()){
getElement().setAttribute("data-href-disabled",href);
}else {
super.setHref(href);
}
}