如何在jquery / javascript中检查数组中的值是否存在于数组中

强杰

我已经在互联网上进行搜索,但是问题似乎完全没有。我要添加question numbers的是text字段中的问题,数字应该是unique我正在尝试检查array of numbers问题数组中是否存在(e.g. 8 questions),然后如果它存在于数组中,则可以输入数字,只要它是即可not entered yet,但是我的代码无法正常工作。我怎样才能做到这一点?请参阅下面的代码以供参考。

$(document).ready(function(){
	var try1;
  var arrayLen = $('#question\\[\\]').length;
  var numArray = [];
  var convertedArray;
  for(i = 1; i <= arrayLen; i++){
  	numArray.push(i);
  }
  
  $('#question\\[\\]').on('input', function(){
    if($.inArray($(this).val(), numArray) !== -1){
    	$('#result').html("available");
    } else{
    	$("#result").html("not available");
      return false;
    }
  });
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<input type="text" id="question[]" placeholder="multipleChoice"><br><br>
<input type="text" id="question[]" placeholder="trueFalse"><br><br>
<input type="text" id="question[]" placeholder="shortAnswer"><br><br>
<input type="text" id="question[]" placeholder="shortAnswer"><br><br>
<input type="text" id="question[]" placeholder="description"><br><br>
<input type="text" id="question[]" placeholder="multipleChoice"><br><br>
<input type="text" id="question[]" placeholder="multipleChoice"><br><br>
<input type="text" id="question[]" placeholder="trueFalse"><br><br>

<span id="result"></span>

接受的答案: 但需要更新

已接受@Shiladitya的回答

Shiladitya

在这里您可以找到解决方案https://jsfiddle.net/33zeL2fa/5/

$(document).ready(function(){
  var arrayLen = $('input[name="question[]"]').length;
  var numArray = [];
  for(i = 1; i <= arrayLen; i++){
  	numArray.push(i);
  }

  $('input[name="question[]"').keypress(function(e){
    if(numArray.indexOf(parseInt(e.key)) != -1){
      $('#result').html("available");
      numArray.splice(numArray.indexOf(parseInt(e.key)), 1);
    } else{
      $("#result").html("not available");
      e.preventDefault();
    }
  });
  
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" name="question[]" placeholder="multipleChoice"><br><br>
<input type="text" name="question[]" placeholder="trueFalse"><br><br>
<input type="text" name="question[]" placeholder="shortAnswer"><br><br>
<input type="text" name="question[]" placeholder="shortAnswer"><br><br>
<input type="text" name="question[]" placeholder="description"><br><br>
<input type="text" name="question[]" placeholder="multipleChoice"><br><br>
<input type="text" name="question[]" placeholder="multipleChoice"><br><br>
<input type="text" name="question[]" placeholder="trueFalse"><br><br>

<span id="result"></span>

我用过jQuery keydown活动。

验证的更多更新她去了https://jsfiddle.net/33zeL2fa/6/

$(document).ready(function(){
  var try1;
  var arrayLen = $('input[name="question[]"]').length;
  var numArray = [];
  var convertedArray = [];
  for(i = 1; i <= arrayLen; i++){
  	numArray.push(i);
  }

  $('input[name="question[]"').keydown(function(e){

  	if(e.which === 8 || e.keyCode === 8){
    	numArray.push(parseInt($(this).attr('newval')));
      $(this).removeAttr('newval');
    } else {
      if(numArray.indexOf(parseInt(e.key)) != -1){
        $('#result').html("available");
        $(this).attr('newval', e.key);
        numArray.splice(numArray.indexOf(parseInt(e.key)), 1);
      } else{
        $("#result").html("not available");
        e.preventDefault();
      }
    }
  });
  
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" name="question[]" placeholder="multipleChoice"><br><br>
<input type="text" name="question[]" placeholder="trueFalse"><br><br>
<input type="text" name="question[]" placeholder="shortAnswer"><br><br>
<input type="text" name="question[]" placeholder="shortAnswer"><br><br>
<input type="text" name="question[]" placeholder="description"><br><br>
<input type="text" name="question[]" placeholder="multipleChoice"><br><br>
<input type="text" name="question[]" placeholder="multipleChoice"><br><br>
<input type="text" name="question[]" placeholder="trueFalse"><br><br>

<span id="result"></span>

希望这会帮助你。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何获取数据是否存在于PHP数组中

jQuery检查值存在于对象数组中

如何检查数组键是否存在于已定义的常量数组中[PHP 7 define()]

如何检查(Sub)Array是否存在于数组中

如何在添加特定对象之前检查其是否已存在于数组中

如何检查键是否存在于对象数组中

在SOAP请求中设置对象的值之前,如何检查对象是否存在于数组中?

如何检查数组1中每个值的顺序,是否存在于数组2中并删除?

如何检查对象是否存在于Angular中的对象数组中

如何检查数组数据是否已经存在于angular中

如何验证键是否存在于数组中

PHP数组如何检查所有数组值是否存在于其他数组中

如何检查值是否存在于struct中?

如何检查给定的int是否存在于数组中?

如何检查复选框是否已经存在于数组ID的angular中:

如何检查项目是否存在于javascript数组中

如何检查数组的元素是否存在于Javascript的字符串中?

Laravel:如何检查复选框的值是否存在于数组中

jQuery验证程序,检查输入名称是否存在于数组中

如何匹配字母并检查值是否存在于数组中或不使用 PHP

jQuery 值存在于数组中

如何检查数组键是否存在于php中的多维数组中

如何检查类的属性是否存在于数组中?

如何检查对象是否存在于多个数组中

如何检查元素是否存在于数组对象中

如何使用javascript检查子对象是否存在于对象数组中?

如何确定数组是否存在于 JQ 中

如何检查数组中包含的确切单词是否存在于 Javascript 中的字符串中

如何检查一个值是否存在于javascript中的数组中?