如何在ckeditor 4中为选定元素添加html文本

时间:2014-04-22 11:42:39

标签: javascript jquery html ckeditor comments

我正在使用CKEditor 4.3.3,其中我添加了表。现在的表结构如下所示

<table>
    <tbody>
        <tr>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
        </tr>
        <tr>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
        </tr>
    </tbody>
</table>

现在我可以使用javascript选择表格

CKEDITOR.instances.ficeditor.getSelection().getStartElement().getParent().getParent();

现在我想在<tbody>开始之前和<table>开始之后添加html文字。

CKEDITOR.instances.ficeditor.getSelection().getStartElement().getParent().getParent().appendHtml("<!-- <div>" +html+"</div> -->");

我用它来附加HTML。但是对于预先添加HTML,我无法找到任何API

有其他选择吗?

I want output to be like this
    <table>
<!-- <div>testing</div> -->
    <tbody>
        <tr>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
        </tr>
        <tr>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
        </tr>
    </tbody></table>

2 个答案:

答案 0 :(得分:0)

你可以通过

使用任何jquery函数
var html=CKEDITOR.instances.ficeditor.getSelection().getStartElement().getParent().getParent().getParent();
    $(html.$).prepend("hi");

答案 1 :(得分:0)

您可以使用此

    var editor  = CKEDITOR.instances.ficeditor;
    var data = $("<div>"+editor.getData()+"</div>");
    data.prepend("top line");
    editor.setData(data.html());