如何在客户端的GWT中创建一个可信的<div>?</div>

时间:2013-06-10 18:04:05

标签: gwt dom widget contenteditable

我正在尝试在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。我在这做错了什么?如何创建这个有意义的div小部件?

1 个答案:

答案 0 :(得分:3)

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

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