2

我有一个要求,我需要创建具有文本框的自定义标题。输入时需要过滤匹配的记录。

通过使用以下链接,我创建了自定义标题。我的 CustomHeader 类是

final public class ColumnHeaderFilterCell extends AbstractCell<String> {

interface Templates extends SafeHtmlTemplates {
@SafeHtmlTemplates.Template("<div >{0}</div>")
SafeHtml text(String value);

@SafeHtmlTemplates.Template("<div >
<input type=\"text\" value=\"\" name=\"{0}\"/></div>")
SafeHtml filter(String value);
}

private static Templates templates = GWT.create(Templates.class);

@Override
public void render(Context context, String value, SafeHtmlBuilder sb) {
if (value == null) {
    return;
}

SafeHtml renderedText = templates.text(value);

sb.append(renderedText);

SafeHtml renderedFilter = templates.filter(value);
sb.append(renderedFilter);
}
}

*ColumnHeader class is* 


public static class ColumnHeader extends Header<String> {

private String name_;

public ColumnHeader(String name) {
    super(new ColumnHeaderFilterCell());
    this.name_ = name;
    //setHeaderStyleNames("columnHeader " + field);
}

@Override
public String getValue() {
    return name_;
}
}

*Adding a column as*

ColumnHeader docColHeader = new ColumnHeader("Documentaton");
cellTable.addColumn(documentaton, docColHeader);

现在我的问题是如何将 addKeyUpHandler() 事件添加到作为 celltable 标题的文本框?

如果文本框在其他地方之外,我已经通过使用以下 链接实现了对 celltable 的过滤如果我 能够将文本框对象传递给 celltable 标题可能会有所帮助。我不知道如何通过。

谁能帮帮我吗

4

1 回答 1

1

单元内的事件处理不是通过像小部件那样的事件处理程序来完成,而是在较低级别完成。请参阅https://developers.google.com/web-toolkit/doc/latest/DevGuideUiCustomCells#cell-onBrowserEvent

于 2012-08-22T14:05:03.380 回答