即使 inarray 函数在我的数组中具有该值,它也会返回 -1
例如。如果我的数组中有 ['3','7','43','44','45','46']
,当我选择值 3 或 7 时,它显示正确答案,然后当我选择其他值时,它返回 -1。
我的 jQuery 编码:
$(document).on("change", '#level',function() {
var valu = $('#level').val();
$.each(filterResults, function(index, item) {
if(jQuery.inArray(valu , item.id)!==-1){ //item.id has all array values
//my functions
}
}
});
然后是我的 HTML 编码
<select class="tb2" name="level" id="level">
<option value="">Select Level</option>
<option value="3">Pre Test</option>
<option value="7">Level 1</option>
<option value="43">Level 2</option>
<option value="44">Level 3</option>
<option value="45">Level 4</option>
<option value="46">Level 5</option>
</select>
console.log(value,item.id) 返回
44 3
44 7
44 43
44 44
44 45
44 46
最佳答案
尝试
if(jQuery.inArray(valu , filterResults)!==-1)
没有.each()
var filterResults = ['3','7','43','44','45','46'];
$(document).on("change", '#level',function() {
var valu = $('#level').val();
// $.each(filterResults, function(index, item) {
if(jQuery.inArray(valu , filterResults)!==-1){
//my functions
console.log(valu, $.inArray(valu, filterResults))
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js">
</script>
<select class="tb2" name="level" id="level">
<option value="">Select Level</option>
<option value="3">Pre Test</option>
<option value="7">Level 1</option>
<option value="43">Level 2</option>
<option value="44">Level 3</option>
<option value="45">Level 4</option>
<option value="46">Level 5</option>
</select>
关于javascript - jQuery.inArray(),即使包含数组中的值也返回 -1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29080433/