我使用PrototypeJS,需要检查div的内容是否为空。但是下面的代码给出了一个错误。div最初并不存在。它是通过AJAX函数添加的。我该怎么检查呢?
if($('lesson-'+tab).innerHTML() == null)
{
//do the job
}发布于 2012-05-31 21:11:38
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
}
}
})发布于 2012-05-31 20:59:57
您需要等到Ajax调用之后才能检查该DIV的内容:
new Ajax.Request(url, {
method: 'get',
onSuccess: function(transport) {
if($('lesson-'+tab).innerHTML() == null)
{
//do the job
}
}
});https://stackoverflow.com/questions/10834099
复制相似问题