2

我正在尝试在 GWT 中创建一个自定义小部件,该小部件在其中创建一个带有 contenteditable=true 的 div。问题是当我创建这个 div 并初始化这个小部件时,该 div 没有 contenteditable 属性。

我的代码:

public MyWidget(){
    FlowPanel panel = new FlowPanel();
    initWidget(panel);


    HTML div = new HTML("<div id=\"my-div\" contenteditable=true></div>");
    div.setText("hello there");
    div.addHandler(new MyWidgetKeyDownHandler(), KeyDownEvent.getType());

    mDiv = div;
    panel.add(div);
}

但是当我运行代码并检查源代码时,我看到了:

<div>
 <div class="gwt-HTML">hello there</div>
</div>

所以看起来它缺少 contenteditable 标记以及 id。我在这里做错了什么?如何创建这个 contenteditable div 小部件?

4

1 回答 1

3
div.getElement().setAttribute('contenteditable', 'true');

我会解决您对特定 ID 的要求。您可以使用 ensureDebugId 设置一个,但您可能会发现没有它会更简单。

于 2013-06-10T21:10:00.530 回答