为什么JQuery .html()返回null?

时间:2011-02-22 15:27:03

标签: jquery html qunit

我有一个QUnit测试套件,正在调用

 $('#idForElement').html();

在QUnit测试中(在$(document).ready()上注册,然后运行),但此函数在Chrome,Firefox和IE中返回null

然而,在Firefox的Firebug的脚本选项卡中,我可以通过将代码添加为监视表达式来获取预期的字符串,并且可以看到页面上和Firebug的HTML标签。

我已阅读http://api.jquery.com/html/,我已将其分配到新的var,这是一个初始化的字符串,将$('#idForElement');的结果放入变量并在其上调用.html() ,在这些浏览器中尝试过警报。

使这项工作的下一步是什么?

2 个答案:

答案 0 :(得分:4)

这可能取决于您何时调用此功能。如果您在document.ready事件之前执行此操作,则该元素可能尚不存在。尝试包装代码如下:

$(document).ready(function () {
    //your code goes here
});

答案 1 :(得分:2)

新秀错误。

正在调用$('#idForElement'),但将var设置为$('idForElement')。

事实证明你可以附加到一个空的包装集。