我使用PrototypeJS,我需要检查div
的内容是否为空。但是后面的代码会出错。 div
最初不存在。它是通过AJAX函数添加的。我怎么检查呢?
if($('lesson-'+tab).innerHTML() == null)
{
//do the job
}
答案 0 :(得分:1)
您需要等到Ajax调用之后才能检查该DIV的内容:
new Ajax.Request(url, {
method: 'get',
onSuccess: function(transport) {
if($('lesson-'+tab).innerHTML() == null)
{
//do the job
}
}
});
答案 1 :(得分:1)
innerHTML
是HTMLElement的字符串属性,而不是function
,因此在调用它时会出错。因为它是一个字符串,所以不检查null,但是字符串为空。
此外,您可能需要检查元素是否存在,以防止$
函数的结果为null
时出现错误。
而且,正如John Conde已经提到的那样,你需要在AJAX调用完成后进行检查:
new Ajax.Request(url, {
onComplete: function(transport) {
var lessonTab = $('lesson-' + tab)
if (!lessonTab || lessonTab.innerHTML.length === 0) {
// do stuff
}
}
})