我有这个模板和下面的代码来在我的 Web 应用程序中生成一个“标签”,如示例输出中所示:
模板:
<p class="tag" data-field="tags">Tags:
</p>
Java代码:
@DataField
DivElement tags = DOM.createElement("p").cast();
@Override
public void setModel(MyModel model) {
binder.setModel(model, InitialState.FROM_MODEL);
for (String tag : model.getTags()){
Anchor a = new Anchor();
a.setText(tag);
a.setHref("#Tags?id=" + tag);
tags.appendChild(a.getElement());
Label comma = new Label(",");
tags.appendChild(comma.getElement());
}
}
HTML 输出(浏览器):
<p data-field="tags" class="tag">Tags:
<a class="gwt-Anchor" href="#Tags?id=test">test</a>
<div class="gwt-Label">,</div>
<a class="gwt-Anchor" href="#Tags?id=tagg">tagg</a>
<div class="gwt-Label">,</div>
<a class="gwt-Anchor" href="#Tags?id=new">new</a>
<div class="gwt-Label">,</div>
</p>
我现在面临的问题是从浏览器运行时的 HTML 输出应该是这样的:
<p data-field="tags" class="tag">Tags:
<a class="gwt-Anchor" href="#Tags?id=test">test</a>,
<a class="gwt-Anchor" href="#Tags?id=tagg">tagg</a>,
<a class="gwt-Anchor" href="#Tags?id=new">new</a>
</p>
并且不要在两者之间创建gwt-label
DIV