gpt4 book ai didi

gwt - 如何在 GWT HTMLPanel 下包装元素

转载 作者:行者123 更新时间:2023-12-02 08:57:19 25 4
gpt4 key购买 nike

假设我使用一些 HTML 创建一个 HTMLPanel,例如:

<p>
Blah blah <span id='1'>more html... </span>
</p>

现在我想将一个事件处理程序附加到该范围。我希望将其视为 InlineHTML GWT 小部件。我尝试过:

HTMLPanel html = new HTMLPanel(stringOfHTML);
parentWidget.add(html);
String id = "1";
Element span = html.getElementById(id);
InlineHTML wid = InlineHTML.wrap(span); // -- error here
html.addAndReplaceElement(wid, id);

倒数第二行因 AssertionError:具有现有父窗口小部件的窗口小部件可能无法添加到分离列表而终止。

有没有办法将子元素包装在 HTMLPanel 中?

这是 GWT 2.4。

注意

经过一些评论和回答后,我意识到我忘记提及:通常 UiBinder 是这里的答案,但我没有使用它,因为输入是由非在另一个上下文中创建的 html 文本-程序员。

最佳答案

不,不是真的。您收到此异常是因为 <span>元素已经是某些小部件的一部分。 wrap方法只能用于在不属于其他小部件的元素之上创建小部件。如果你想处理这个跨度上的点击,你可以将 dom 处理程序添加到 HTMLPanel ,然后检测哪个元素被点击。

关于gwt - 如何在 GWT HTMLPanel 下包装元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9214447/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com