检查数组中的特定值

时间:2013-04-22 11:15:19

标签: jquery html css

我创建了一个下拉列表并在数组中获取了选项标记值。我想检查文本框值是否与数组值匹配。

HTML:

<select>
<option>test1</option>
<option>test2</option>
<option>test3</option>
<option>test4</option>
</select>
<input type="text" id="txt" /> //textbox
<input class="bt" type="button" id="btntest" value="Check for the Value">

我使用以下Jquery获取数组

var values = $('select').children('option').map(function (i, e) 
{
return e.innerText;
});

现在变量将结果保存为 test1,test2,test3,test4

问题:如果用户在文本框中键入“ test2 ”( txt ),如何检查数组中是否有 test2 等等上。如果用户输入除数组值之外的任何内容,则应显示错误消息。

请找到fiddle

5 个答案:

答案 0 :(得分:2)

inArray中有一个内置的jquery函数 http://api.jquery.com/jQuery.inArray/

jQuery.inArray("test2", values)

答案 1 :(得分:1)

您可以使用jquery InArray

jQuery.inArray( $('#txt').val() , values)

答案 2 :(得分:0)

使用jQuery.inArray

if( jQuery.inArray( yourValue, yourArray) ){ //doStuff }

答案 3 :(得分:0)

Fiddle

$('#btntest').click(function () {
   if ($.inArray($('#txt').val(), values) > -1) {
      console.log("available");
   }else{
     console.log("not available");
   }
});

答案 4 :(得分:0)

据我了解,您需要自动选择该选项,以便更容易

var value = $('#txt').val();
$('option', 'select').filter(function(){return this.innerText == value;}).prop("selected", true)