2013-07-23 51 views
0

我动态创建一个HTML并为我的列标题分配一个多行标题。当我尝试将HTML附加到我的表格时,.append会关闭标题属性中的标记。jQuery .append关闭多行标题属性中的标记

我在这里读了一些线程,我应该将.append中的html移动到一个字符串变量,然后追加变量。但是那也行不通。

这里是我的jsFiddle

HTML:

<table id="tab1"> 
    <thead> 

    </thead> 
</table> 

JS:

var title = "Roger A Famz <br/> 213 Wood Ave <br/> Middletown <br/> NY"; 
var myHtml = "<tr><th>Column 1</th>" + 
    "<th id='something' class='someclass' title='" + title + "'>Roger A Famz</th></tr>"; 

$("#tab1").append(myHtml); 

如果你注意到,在呈现的HTML我的标题属性已关闭的主要标签:

Roger A Famz <br></th> 213 Wood Ave <br/> Middletown <br/> NY 

而不是

Roger A Famz <br/> 213 Wood Ave <br/> Middletown <br/> NY 

我错过了什么?

+0

如果您删除了'/'的''
它不会发生。 http://jsfiddle.net/DP9uc/6/ – Musa

+0

它工作,如果你通过JavaScript添加标题:http://jsfiddle.net/DP9uc/10/ – musicnothing

+0

@Musa,它通过删除'/'工作。正如Tushar所说,我认为它在html5中有效。我如何将此标记为答案?虽然,Tushar也建议一样,但你在他之前回答:) –

回答

0

<br>取代<br/>在HTML5中,你不需要关闭BR标签

工作演示http://jsfiddle.net/cse_tushar/DP9uc/14/

var title = "Roger A Famz <br> 213 Wood Ave <br> Middletown <br/> NY"; 
var myHtml = "<tr><th>Column 1</th>" + 
    "<th id='something' class='someclass' title='" + title + "'>Roger A Famz </th></tr>"; 

$("#tab1").append(myHtml); 
+0

谢谢Tushar,它也适用于Musa所提及的。任何我们尚未使用HTML5的方式。 –

+0

现代浏览器将'
'标记呈现为'
' –