在div中包含第一行的contenteditable

时间:2014-07-19 05:38:13

标签: jquery html contenteditable

我有一个div属性contentEditable set。

我遇到的麻烦是我输入的第一行没有包含在标签中,但是后续行包含。

输入

abcd
efgh
ijkl

结果

<div contentEditable="true">
    "abcd"
    <div>efgh</div>
    <div>ijkl</div>
</div>

2 个答案:

答案 0 :(得分:1)

试试这个:获取textchildren然后将可编辑的div设为空并用div包装文本(我添加了颜色:红色以便只知道添加了div)和子项。

$(function(){
    $('div[contentEditable="true"]').each(function(){
       var text = $(this).clone().children().remove().end().text();// get text
       var $children = $(this).children();// get children

       //add text and children again
       $(this).empty().append('<div style="color:red;">'+text+'</div>').append($children);
    });
});

<强> Demo

答案 1 :(得分:-1)

我不知道你在问什么。但是你需要结果

 $("div[contentEditable=true]").text("abcd");
    $("div[contentEditable]").append("<div>efgh</div><div>ijkl</div>");

DEMO