我正在使用 GWT 2.4。我正在构建一个带有一些可编辑表格单元格的 CellTable。我的问题是,当单元格被渲染时,我如何强制它们使用输入标签中定义的“名称”和/或“id”属性来渲染?现在,我用于渲染单元格的代码是......
class EditableTableCell extends TextInputCell {
private final List<Node> colData;
public EditableTableCell(final List<Node> colData) {
super();
this.colData = colData;
}
@Override
public void render(Context context, String value, SafeHtmlBuilder sb) {
final Integer index = context.getIndex();
final Node childNode = colData.get(index);
if (childNode.getAttributes() != null &&
childNode.getAttributes().get("edit") != null &&
childNode.getAttributes().get("edit").getValue() != null &&
childNode.getAttributes().get("edit").getValue().equalsIgnoreCase("yes")) {
super.render(context,value,sb);
} else {
sb.appendEscaped(value);
} // if
}
}
如果单元格是可编辑的,则生成的 html 看起来像...
<td class="GCSPOWVPD GCSPOWVBE GCSPOWVCE GCSPOWVME">
<div style="outline:none;" tabindex="0">
<input type="text" value="\n\t\t\tABC\n\t\t" tabindex="-1"></input>
</div>
</td>
尽管定义了“类型”、“值”和“标签索引”,但没有定义“名称”或“ID”。试图弄清楚如何做到这一点。谢谢, - 戴夫