2016-09-22 66 views
0

我有一个看起来像这样为什么我得到这个<br>元素在一个contenteditble div?

<div id="test" contenteditable="true" style="height: 17px;"> 
</div> 

当我做$("#test").html()一个div元素,我希望看到一个空字符串返回,但实际上,它给了我<br>

为什么会有一个<br>,即使我没有把任何在那里的div?

编辑:实际上,在div标签之间,我有一个Struts2属性标签,它输出一个值,但是在后端填充的这个值是空的,所以我并不期待在那里看到<br>

+1

我[无法复制](http://jsbin.com/xadovaciku/edit?html,js,console)。 –

+2

无法复制,因为这不是您拥有的实际HTML。 – adeneo

+2

尝试把div的开头放在同一行上。 – luissimo

回答

-1

https://jsfiddle.net/47r6p89r/

<div ...></div>之间的空间。 空格将被HTML检测到,但只能一个接一个地检测。奇怪的是你有

<br> 

作为输出我只是没有得到任何东西在小提琴。

这里像在我的小提琴中,你可以检测如果#test是空的,如果不是你可以看到结果。

$(document).ready(function() { 
    if ($('#test').html() !== "") 
    $('#console').text($('#test').html()); 
    else 
    $('#console').text('empty'); 
}); 
0

它看起来像奇怪的问题,据我的经验,这可能是因为这些东西

  1. 这可能是HTML标记没有被关闭
  2. 你可能有一些浏览器的扩展,它一段时间做这些类型奇怪的东西

所以尽量禁用所有的扩展,并检查所有的html标签也禁用扩展后尝试在隐身模式,我认为它可以帮助您调试此问题。