2013-02-27 3 views
0
<script> 

    alert(document.getElementById('a')); 

</script> 
<html> 
    <table> 
    <tr> 
    <td id='a' class="test">test</td> 
    </tr> 
    </table> 
</html> 

Я пробовал это, но получаю «нуль» в результате. Кто-нибудь может помочь? Благодаря ~Как выбрать тег td getElementById

+0

Когда ваш сценарий становится выполняются, элемент с этим 'id' не была заселена на странице еще! Следовательно, нулевой результат. – hjpotter92

+0

Всегда вызывайте javascript в конце html-страницы или если страница загружена (загружается в теле) –

ответ

3

Попробуйте

<html> 
    <table> 
    <tr> 
    <td id='a' class="test">test</td> 
    </tr> 
    </table> 

<script> 

    alert(document.getElementById('a')); 

</script> 
</html> 

есть тег сценария ниже <td>. Нуль - это потому, что вы пытаетесь получить то, что не существует, когда скрипт выполняется.

+0

большое спасибо ~ – Leo

1
<html> 
<head> 
    <script> 
     var readyStateCheckInterval = setInterval(function() { 
      if (document.readyState === "complete") { 
       alert(document.getElementById('a')); 
       clearInterval(readyStateCheckInterval); 
      } 
     }, 10); 
    </script> 
    </head> 
    <body> 
     <table> 
     <tr> 
     <td id='a' class="test">test</td> 
     </tr> 
     </table> 
    </body> 
</html> 

The document.readyState это свойство встроена во все браузеры, чтобы проверить, если страница была загружена или нет.

Более подробная информация о readyState собственности:

+0

большое спасибо ~ – Leo

Смежные вопросы