2014-02-27 2 views
0

는 좀 배열의 일부 단어를 찾기 위해 노력하고 있는데이 같은했다 : 나는 거의 모든 fisier의 VAR에서 "마이그레이션 백분율"가JQuery와 inArray 사용

$("#get").click(function(){ 
    $(".name").each(function(){ 
     var fisier = $(this).text(); 
     alert($.inArray("migr", fisier)); 
    }); 
}); 

을하지만 난 단지 얻을 -1. 내가 도대체 ​​뭘 잘못하고있는 겁니까 ?

감사합니다. 당신이 값을 확인할 수 inArray 기능의 도움으로

+0

정확히 일치하는 단어는 .. –

+3

입니다.'fisier'는 단지 배열이 아닌 문자열입니다. – xdazz

+0

물론 바보 같은 .. 고마워! – arrd

답변

1

JavaScript indexOf 메소드로 키워드를 확인할 수 있습니다. 이것은 배열의 각 원소를 검사합니다 :

$("#get").click(function(){ 
    $(".name").each(function(){ 
     var fisier = $(this).text();  
     if(fisier.indexOf("migr") !=-1){ 
      alert('Keyword found'); 
     }else{ 
      alert('Keyword not found'); 
     } 
    }); 
}); 
+0

그랬습니까 ! 감사! – arrd

1

배열 여부에 존재합니다. $ .inArray 함수는 요소의 인덱스를 반환합니다. 배열에 이 아닌 요소가 있으면 -1을 반환합니다. 그래서 우리는 매우 간단하게 확인 할 수 있습니다 값이 배열에 존재하는지 아닌지를 확인하십시오.

0

fisier은 단지 배열이 아닌 문자열입니다.

나는 이것이 당신이 원하는 것을 추측 :

$("#get").click(function(){ 
    var names = $('.name').map(function() { 
     return $(this).text(); 
    }); 
    alert($.inArray("migr", names)); 
}); 
0

inArray이 배열의 요소의 인덱스가 아닌 항목이 배열에 존재하는지 나타내는 부울을 반환합니다. 항목이 어레이에있는 경우

그래서, 체크 사용 요소가 발견되지 않은 경우

if(jQuery.inArray("test", myarray)!==-1) 

또는 inArray 같은

if($.inArray("test", myarray)!==-1) 

, -1을 리턴한다.