2010-09-10 26 views
0

这个问题只发生在使用IE浏览器(只在IE 7中测试,在Firefox/Chrome中正常工作)。为什么我可以追加到一个空表,但没有在IE7中通过jQuery设置它的html?

我的页面上有一个空的表格元素,id ='settings'。 一个Ajax调用执行后,我把说AJAX调用的结果,到我的空表元素,像这样:

$("#settings").html(msg); 

嘛,只是不工作...如果我alert(msg);我看应该放在HTML进入那张空的桌子。该html是有效的,但由于某种原因IE7只是没有渲染它。

我修修补补了一段时间,最后尝试这样:

$(msg).appendTo("#settings"); 

像魔术这有一些如何固定的问题。任何想法为什么appendTo()方法可以工作,但不是html()方法?

谢谢!

+0

你是否将它追加到多个元素? – 2010-09-10 19:02:31

+0

@Nick:不可以,只能附加到id = settings的单个表中。 – Ryan 2010-09-13 11:40:40

回答

2

IE需要一个tbody标记才能正常工作;)

+0

它使正确格式化的表格。其他浏览器(在这种情况下)有点宽容。 – Buggabill 2010-09-10 19:06:54

+0

假设你的解决方案确实有效(我还没有尝试过,因为我做了什么使它工作,我懒惰做了更多的改动),为什么? appendTo是否在添加msg之前自动创建标签? – Ryan 2010-09-15 14:50:30

相关问题