我本想的在contenteditable 的div中,当按下回车时,就插入 \n 
    $("#textarea_area").bind("keypress",function(e){            if (e.keyCode == 13){
                console.log($("#textarea_area").val());
                var temp  = $("#textarea_area").val() +"\n";
                text_area.val( temp);
}但是在控制台中可以看到,$("#textarea_area").val() 这一句取不到数据 ,如果用$("#textarea_area").text()就取得到。 这是为什么捏?  不知道怎么回事,如果直接 用
 var temp  = $("#textarea_area").text() +"dd";
 $("#textarea_area").val(temp);
先输入a
console.log($("#textarea_area").text()) --> a  
console.log(temp)     ----------------------------> add  
回车后再输入c
console.log($("#textarea_area").text()) --> ac  
console.log(temp)     ----------------------------> acdd 而想要的结果应该是 addcdd

解决方案 »

  1.   

    完全看不懂。请把代码贴完整。直接把代码贴 http://jsfiddle.net/ 上,方便大家帮你测试。
      

  2.   

    textarea不能用value取。innerHTML这才是对的。jQuery应该是$("#textarea_area").html();
      

  3.   

    为什么不等于addcdd呢?
    因为你的变量temp不是累加。
    var temp += $("#textarea_area").text() +"dd";
    这样你试试
      

  4.   


                $("#textarea_area").bind("keypress",function(e){
                       var $this = $(this);
                          if (e.keyCode == 13){
                             console.log($this.val());
                             var temp = $this.val() +"\n";
                            $this.val( temp);
                         }
                 });我这样可以啊,是不是textarea_area是div的id而不是textarea的id呢?如果是div的id那么text可以取到div下元素的文本值,但是val是取不到任何值的