2016-08-23 3 views
-1

나는이 페이지에서 학교 이름을해야 : 그래서 스크립트를 작성하고 콘솔에 넣어 작품에 대한 http://www.australianschoolsdirectory.com.au/search-result.php을 내가 직접하고 싶지 않아 :자바 스크립트 AnchorTag.text는 undefined를 반환합니다

var schoolNames = document.getElementsByClassName("listing-header"); 
console.log(schoolNames[0].getElementsByTagName('a').text); 

이 코드는 undefined을 반환하지만 첫 번째 학교의 이름을 얻을 것으로 예상됩니다.

이것이 제대로 수행되었다고 생각하면 제대로 만드는 법 하하?

고맙습니다!

+0

getElementsByTagName - 단서는 서명에 있습니다. 주어진 태그에 대해 여러 항목을 리턴 할 수 있습니다. 루프를 통해 반복하거나 첫 번째 루프를 가져야합니다 (있는 경우). – ManoDestra

답변

2

결과 배열에 .text()을 호출하는 것이 문제입니다. getElementsByTagName()을 사용한 방법은 배열을 반환합니다. 당신의 배열을받은 후 코드의 첫 번째 부분에서 수행 한 것처럼

console.log(schoolNames[0].getElementsByTagName('a')[0].text); 

: 당신이 그런 요소의 텍스트를 취득 할 때, 첫 번째, 당신은 THS 같은 것을 사용하는 거라고 말 클래스 이름이있는 모든 요소 var schoolNames = document.getElementsByClassName("listing-header");schoolNames[0]

+0

완벽! 고맙습니다! 가능한 한 빨리 답변을 수락하십시오! – scarface

+0

@lolofon 환영합니다. 감사합니다 .-) –

관련 문제