1

jqueryのhtml関数の奇妙な振る舞いを見つけました。

次のコードスニペットがあります。

HTML

<div id='content'></div>​

Javascript

var test2 = "<h5>test(S)</h5><span class='small_text>Apr 20, 2012 @ 07:00PM<br />Section 102 Row G Seat 14-14<br />";

$(document).ready(function(){

    $("#content").html(test2);

});​

コードを実行すると、「test(S)」しか表示されません。jqueryは残りの文字列を無視しているようです。

jsfiddleを作成しました。

http://jsfiddle.net/E3X33/

私はそれを間違って使用していますか?または文書化されていないものがありますか...?

4

3 に答える 3

5

タグを閉じていないことに加えて、属性<span>の引用符を閉じていますclass

する必要があります:

var test2 = "<h5>test(S)</h5><span class='small_text'>Apr 20, 2012 @ 07:00PM<br />Section 102 Row G Seat 14-14<br /></span>";
于 2012-04-20T21:50:06.547 に答える
2

はいといいえ。jQuery 構文は正しいですが、HTML は正しくありません。

これを試して:

<h5>test(S)<\/h5><span class='small_text'>Apr 20, 2012 @ 07:00PM<br \/>Section 102 Row G Seat 14-14<br \/><\/span>

次のことを行う必要がありました。

  1. span タグの class 属性を閉じます。
  2. span タグ自体を閉じます。
  3. 悪いブラウザーでの安全のために、スラッシュをエスケープします。
于 2012-04-20T21:51:49.833 に答える
2

spanタグを閉じ'て、スパンクラスを閉じてみてください:

var test2 = "<h5>test(S)</h5><span class='small_text'>Apr 20, 2012 @ 07:00PM<br />Section 102 Row G Seat 14-14<br /></span>";
于 2012-04-20T21:51:52.007 に答える