2013-08-09 9 views
1

이것은 .text()으로 된 요소를 찾기위한 JavaScript 코드이지만 작동하지 않습니다.자바 스크립트로 검색

var divCollection = getElementByClass("titletrack"); 
for (var i=0; i<divCollection.length; i++) { 
    if(divCollection[i].text() == title) { 
    findMeText = divCollection[i].text(); 
    alert(findMeText); 
    } 
} 
+0

jQuery를 사용하면 작업을 훨씬 쉽게 할 수 있습니다. – MightyPork

+0

뭐하는거야? 너는 무엇을 기대 했는가? – Paul

+2

getElementByClass는 유효한 JS 함수가 아니며 .text()는 유효한 JS 함수가 아니며 title이 정의되지 않습니다. 자바 스크립트에 대한 기본 자습서로 시작하는 것이 좋을 것입니다. 여기에 돌아와 뭔가 의미있는 질문을 할 수 있습니다. 지금은 질문이별로 의미가 없으므로 괜찮은 대답을 드릴 수는 없습니다. – Kenneth

답변

1

WORKING FIDDLE

희망을 ;-)에 동일 대신의 제목이 포함되어 있는지 확인하는 if(divCollection[i].textContext.indexOf(title) != -1)를 사용할 수 있습니다. 이것은 복잡하게 보일 수 있으며 그것을 수행하는 간단한 방법이 있다는 것을 확신합니다. 그러나 그것은 효과적이다.

var divCollection = document.getElementsByClassName("titletrack"); 

for (var i = 0; i < divCollection[0].childElementCount; i++) { 
    if (divCollection[0].children[i].textContent == "Element 1") { 
     findMeText = divCollection[0].children[i].textContent; 
     alert(findMeText); 
    } 
} 

이제 divCollection의 요소를 원하는 문자열과 비교할 수 있습니다. 피들 (fiddle)에서는 "Element 1"이라는 문자열을 사용하여 JavaScript의 작동을 보여줍니다.

0

이을 시도해보십시오입니다

var divCollection = document.getElementsByClassName('titletrack'); 

대신 getElementByClass의 getElementsByClassName. 이 같은

뭔가 거래를 완료합니다 :

var str = ''; 
var strSearchingFor = 'foo'; 
for(var i=0; i < divCollection .length; i++) 
{ 
    str+= " " + divCollection[i].value; 
    if(str == strSearchingFor) 
    { 
     alert("found"); 
    } 
} 
0

getElementByClass 일관 (http://w3schools.invisionzone.com/index.php?showtopic=30857 참조) 구현되지 않습니다 - 당신이이 브라우저 불일치를 처리하지 않으려면 내가 jQuery를 또는 유사한을 사용하는 것이 좋습니다 것입니다 :

var divCollection = $('.titletrack'); 
+0

나는 '$ ('titletrack [text = '+ title +'] ')와 같은 생각을하고있었습니다.이 시점에서 그는 막연합니다. 분명히 텍스트를 4 ~ 5 번 되풀이하는 것은 무의미합니다. – Paul

0

기본 자바 스크립트 element.text() 방법이 아니다. 대신 element.textContent을 사용하십시오.

또한 요소는이 당신이 생각했던 것입니다

+0

고마워하지만 같은 문제가 작동하지 않습니다 –

+0

오류 로그를 복사/붙여 넣기 할 수 있습니까? (당신은 크롬 devtools의 콘솔에서 그것을 얻을 수있다.) – Aegis

+0

@GiorgiChumburidze는 당신이 그것을 알아 차리지 않으면 내 대답을 한번 보아라. – Jonast92

관련 문제