有一个HTML:
<div class="test">
<ul>
<li>Item 1</li>
<li>Item 2</li>
</ul>
</div>
还有一点JS:
$(document).ready(function() {
// do stuff when DOM is ready
$(".test ul").append('<li>Foo</li>');
});
为什么它什么都没有添加,但是如果我从append的参数字符串中删除html,
.append('Foo')
它有效 - 但这不是重点 - 新文本被添加为匿名块,而不是我想要的项目。
Anu建议?
编辑: 唉,我发现了问题。我修改了从Firefox的“保存页面”选项保存的文件,扩展名为.xhtml - 这就是问题所在。我重命名它,它工作正常。
谢谢:)
答案 0 :(得分:1)
从JavaScript添加实际的HTML是相当难看的,你尝试过这样的事情:
var li=document.createElement("li");
li.appendChild(document.createTextNode("Dupa"));
$(".text ul").appendChild(li);
答案 1 :(得分:0)
我检查了你的代码,它在我的机器上完美运行......所以我认为这不是jQuery bug。
答案 2 :(得分:0)
扩展Frans-Willems代码:
jQuery(function($){
/* This is exactly the same as that document ready thing */
var li=document.createElement("li");
$(li).text("Dupa");
$(".text ul").append(li);
});