2017-02-16 21 views
0

システムのログインをしようとしていますが、ユーザー入力から得られる文字列を持っていて、その入力が特定の配列であるかどうかを確認したいのですが...配列の値と文字列を一致させる

私がこれまでに得たもの:

var name = $(".input").value(); 
var options = ["option_one", "option_two", "three"]; 
$(".submit").click(function() { 

for(i=0; i < options.lenght; i++){ 
    if(options[i] == name){ 
     alert("true") 
    }else{ 
     alert("false") 
     } 
} 


}); 

は誰もが私を助けることはできますか?

EDIT:CodePen

答えて

1

Simplier方法 - .includes()関数を使用します。

http://codepen.io/anon/pen/JEVBgN

var name = $(".input").val(); 
 
var options = ["option_one", "option_two", "three"]; 
 

 
console.log(options.includes(name) ? 'valid!' : 'invalid!');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input class='input' value='three'>

+0

常に偽警告:C – Miguel

+0

はもう一度確認してください@Miguel。 'three'と打ってクリックボタンを押します。 –

+0

変数は動作するためにはローカルでなければなりませんでしたか? – Miguel

2

あなたはこのようなindexOfを使用することができ:

if(options.indexOf(name) != -1){ 
    alert("valid") 
}else{ 
    alert("false"); 
} 

indexOfインデックスを戻します(> = 0)元素が発見されたアレイから、-1、さもなければ。

関連する問題