GWT - 在HTMLPanel中显示/隐藏<tr>

dav*_*vid 6 gwt html-table

我有一个<table>内部的HTMLPanel .我想显示/隐藏<tr>java代码中的一个.

我试图将<tr>其他HTMLPanel放入其中并隐藏Panel.像这样的东西:

...
<tr>
  ...
</tr>
<g:HTMLPanel ui:field="name">
    <tr>
    ...
    </tr>
</g:HTMLPanel>
<tr>
  ...
</tr>
Run Code Online (Sandbox Code Playgroud)

码:

name.setVisible(false);
Run Code Online (Sandbox Code Playgroud)

它有效,但它会在演示文稿中引起奇怪的行为.

我怎么能这样做?

多谢!!!

Tas*_*kos 9

使用@UiField TreeRowElement rowNameHTML作为...<tr ui:field="rowName">...</tr>....然后使用TreeRowElement显示/隐藏该行.

  • 尝试`rowName.getStyle().setDisplay(Display.NONE);` (2认同)

sja*_*ski 5

扩展@Tassos答案:

Java的

@UiField TableRowElement expanded;

boolean exp=false;

    expandme.addClickHandler(new ClickHandler() {
        public void onClick(ClickEvent clickevent) {
            if(exp){
                expanded.getStyle().setDisplay(Display.NONE);
            } else {
                expanded.getStyle().clearDisplay(); //took a little while to find.
            }
            exp = !exp;
        }
    });
Run Code Online (Sandbox Code Playgroud)

HTML:

<tr ui:field="expanded">   
Run Code Online (Sandbox Code Playgroud)

expandme是你可以附加点击处理程序的任何元素,(ex Anchor,Button等)