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标签并关闭'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 回答