有没有办法使用 vaadin 8 自定义布局来修改父元素上的元素类属性?

问题描述

因此,使用 Custom Layout,您基本上拥有 html。我们的模板中有这个

                    <div id="test-kit-wrap" class="cell cell-above">
                        <div class="sub-cols-wrap">
                            <div id="test-kit" class="cell">
                                <div class="label detail-page-heading">Device/Kit</div>
                                <div location="kit" class="value">Yes</div>
                            </div>

由于这种布局的复杂性,我们使用模板。这个模板目前可以工作,只是它不应该显示这个 div。

我想要做的是向 #test-kit-wrap 添加一个样式,当在后端设置特定权限时,它等同于 display: none。但是,我看不到这样做的好方法。有没有办法做到这一点?

解决方法

这是我最终做的事情。

既然 #test-kit-wrap 完全没有显示,那么里面的元素实际上并不重要。

 <div id="test-kit-wrap" class="cell cell-above">

所以我把上面的html改成

  <div location="test-kit-wrap" id="test-kit-wrap" class="cell cell-above">

然后在我的 java 中,当我不想要该元素的内容时,我使用我想要的类和正确的位置设置了一个空的 CssLayout。我怀疑我也可以切换可见性。

        else {
            String locId = "test-kit-wrap";
            Layout value = new CssLayout();
            value.addStyleName( "hidden" );
            value.setId( locId );
            addComponent( value,locId );
        }

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...