2

如何在 Java 中以编程方式创建 DIV,以呈现如下所示的 DIV:

<div class="fb-like-box" data-href="http://www.facebook.com/platform" data-width="595" data-show-faces="true" data-stream="true" data-header="true"></div>

出于某种原因,我需要用 Java 而不是 Errai-UI 模板来做;因为它似乎在页面转换时被删除。

无论如何,我应该使用 DivElement 还是其他?这个想法是我应该能够在 Java 代码上创建它并将其插入到某种 SimplePanel 中......

4

3 回答 3

4

您可以在 GWT 中使用SafeHtml(防止脚本注入)来实现。

String s = "<div>some html goes here</div>";
SafeHtml safeHtml = SafeHtmlUtils.fromString(s);

And then Prepare HTML with that


HTML dynamicHTml = new HTML(safeHtml);

SafeHtml 将字符串评估为浏览器中的 HTML 不会导致脚本执行。

于 2013-03-21T04:49:39.553 回答
3

使用 HTML 小部件:

HTML html = new HTML("<div class='fb-like-box' data-href='http://www.facebook.com/platform' data-width='595' data-show-faces='true' data-stream='true' data-header='true'></div>");

panel.add(html);
于 2013-03-20T22:12:59.383 回答
1

或者, aFlowPanel将默认呈现一个div元素。您可以在其上设置任意data属性,例如:

FlowPanel div = new FlowPanel();
div.getElement().setAttribute("data-myattr", "somevalue");
于 2018-02-20T22:30:19.770 回答