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