2016-09-22 2 views
0

は私が$("#test").html()を行うと、このコンテンツ編集可能なdivにこの<br>要素があるのはなぜですか?

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

のように見えるdiv要素を持って、私は空の文字列が返さ見ることを期待したいが、実際に、それは私に<br>を与えます。

divに何も入れていないのに、なぜ<br>になるのですか?

編集:実際には、divタグの間に値を出力するStruts2プロパティタグがありますが、この値はバックエンドに空白が入りますので、そこに<br>が表示されるとは思われませんでした。

+1

私は[それを再現できません](http://jsbin.com/xadovaciku/edit?html,js,console)。 –

+2

実際のHTMLではないため、再現できません。 – adeneo

+2

閉じたdivをdivの開始と同じ行に置いてみてください。 – luissimo

答えて

-1

https://jsfiddle.net/47r6p89r/

<div ...></div>の間にスペースがあります。 スペースはHTMLで検出されますが、1つずつ検出されます。奇妙なことは、あなたが持っていることです

<br> 

出力として私はちょうどフィドルのように何も得ていません。

私のフィドルのように、#testが空であれば検出できますが、結果が表示されない場合は検出できます。

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

それは、奇妙な問題のように見えるのです限り、それはそれは、HTMLタグ起因し得るこれらのもの

  1. にすることができ、私の経験は
  2. を閉じていないあなたはいくつかの時間、いくつかのブラウザ拡張機能を有することができますこれらのタイプの奇妙なものを行う

したがって、拡張子を無効にした後にすべてのHTMLタグもシークレットモードで試してみると、この問題のデバッグに役立つと思います。

関連する問題