2017-05-11 8 views
-1

에 같이 IndexOf를 사용하여 포함 할 수 없습니다?내가 사업부의 내용에 문제가 innerHTML을 값

편집 :

var inner = d[u].innerHTML; 
alert(R[i]);//this alert is: question 
alert(inner.indexOf('question'));//result >-1 
alert(inner.includes('question'));//result true 

지금 작동

,하지만 난 내가 그것을 고칠 수있는 방법 ... 내 배열을 잃을? 분명히 indexOf가 포함되어 있으므로 변수를 원하지 않습니까?

편집 :

if R[i] = id="05" : error(indexOf -1); if R[i] = id=05 : correct (indexOf > -1); 

하지만 난이 ""또는 ''를 사용해야합니다, 그것은 매우 중요합니다, 내가 어떻게이 문제를 해결할 수 있습니다 문제는 R [i]는 가치인가?

+0

가'd'와'R' 무엇의 내부 myclass의 모든 인스턴스를 넣을 수 있을까? – AshBringer

+0

문제가 코드의 다른 부분에있을 수 있습니까? 'd [u] .innerHTML'과'R [i]'는 모두 String 유형입니까? – Sventies

+0

d = document.getElementsByClassName ("myclass") 및 R [i]는 배열의 요소입니다. R [ 'question', 'others ..'] – User

답변

0

indexOf() 메서드는 문자열에서 지정된 값이 처음 나타나는 위치를 반환합니다.
검색 할 값이 결코 발생하지 않으면이 메서드는 -1을 반환합니다.
참고 : indexOf() 메서드는 대/소문자를 구분합니다.

당신은 inner

var d = document.getElementsByClassName("myclass"), 
 
    dlen = d.length, 
 
    u; 
 
var R = ['question', 'paragraph', 'answer'], 
 
    Rlen = R.length, 
 
    i; 
 
var inner = ""; 
 
for(u=0;u<dlen;u+=1){ 
 
    inner += d[u].innerText + " "; 
 
} 
 
for(i=0;i<Rlen;i+=1){ 
 
    console.log(inner.indexOf(R[i])); 
 
    console.log(inner.includes(R[i])); 
 
    console.log("---"); 
 
}
<div class="myclass">word</div> 
 
<div class="myclass">text</div> 
 
<div class="myclass">paragraph</div> 
 
<div class="myclass">letters</div> 
 
<div class="myclass">characters</div>