使用PrototypeJS检查div的内容

时间:2012-05-31 12:57:48

标签: prototypejs

我使用PrototypeJS,我需要检查div的内容是否为空。但是后面的代码会出错。 div最初不存在。它是通过AJAX函数添加的。我怎么检查呢?

if($('lesson-'+tab).innerHTML() == null)
  {
     //do the job
  }

2 个答案:

答案 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
    }
  }
})