2010-12-21 5 views
3

私はHTMLタグ内にテキストを挿入するためにjQueryを使用しています。 HTMLコードは次のようになります。IE7のjQueryストリップ末尾の空白のメソッド.text()と.html()

<h5>Do you want to send a message to <span id='firstName'></span> right now?</h5> 

spanタグ内のテキストを挿入するためのjQueryのコードは次のようになります。

var myFirstName = "Thomas"; 
$("h5 span.firstName").html(myFirstName); 

私は、Firefox、クロム、SafariやIE8でこのコードを実行すると結果はこれです:

<h5>Do you want to send a message to <span id='firstName'>Thomas</span> right now?</h5> 

しかし、Internet Explorer 7で、結果がこれです:

は、あなたが今Thomasrightにメッセージを送信しますか:210

spanタグの後に末尾の空白は読み込み、画面上のテキストで結果として取り除かれますか?」。

私は(両方の.htmlを使用してみました

)との.text()が、結果に差がない。

は、このバグを修正する方法はありますか?それはで既知のバグですjQueryの/ IE7事前に

おかげ

/トーマス・カーン

答えて

2

を作成すると、<span id='firstName'></span><span id='firstName'>&nbsp;</span>になります。 ^^

simple demo page

^IE 7

+0

ありがとう!素晴らしい答え。 – tkahn

+0

私は同じ問題を抱えていますが、スパムに何も含まれていなくても、コンテンツがすべて読み込み時に表示される必要があるため、この解決法は役に立ちません。例えば。 「私たちはあなたに点を与えるでしょう。余分なスペースを表示しないようにする必要があります。センテンスは、ポイント数が指定される前であっても意味を持ち、スパンにあるポイントが含まれている場合は、より具体的になります。だから私は何とか ' 'を追加せずにjqueryのIE7のバグを修正する必要があり、私の場合に適用される解決策が見つかりませんでした。 – Ryan

2

奇妙ですが、あなたがこれを行うことができます:?!

var myFirstName = "Thomas&nbsp;"; 
$("h5 span.firstName").html(myFirstName); 
+0

でこれを開くこの回答でも、私は上記の私のコメントで説明した場合(http://stackoverflow.com/questionsのために、私のために働くように見えました/ 4497361/methods-text-and-html-in-jquery-strip-trailing-whitespace-in-ie7#comment17062549_4497488)。 – Ryan

関連する問題