JSFiddle - React, Tailwind, and code Playground
HTML
<span>VALORES de 1 a 3</span><BR/>
<input type="text" class="teste"><BR/>
<input type="text" class="teste"><BR/>
<input type="text" class="teste"><BR/>
<BR/><BR/>
<span>VALORES de 1 a 5</span><BR/>
<input type="text" class="teste1"><BR/>
<input type="text" class="teste1"><BR/>
<input type="text" class="teste1"><BR/>
<input type="text" class="teste1"><BR/>
<input type="text" class="teste1"><BR/>
<BR/>
<div class="resultado"></div>
JavaScript
var valorAnterior = 0; /* variavel global */
var valorAtual=0;
var array1 = [];
var array2 = [];
$(document).ready(function(){
verificaCamposRepetidos(".teste", array1);
verificaCamposRepetidos(".teste1", array2);
});
function verificaCamposRepetidos(element,array){
totalPerguntas = $(element).length;
$(element).on("focus", function () {
if ($(this).val() != "") {
valorAnterior = $(this).val();
}
});
$(element).on("change", function () {
valorAtual = $(this).val();
if (valorAtual > totalPerguntas || valorAtual <= 0) {
if (valorAtual != "") {
alert("Valor Digitado : " + valorAtual + "\nDigite NĂşmeros de 1 a " + totalPerguntas);
$(this).val("");
return false;
}
}
var index = array.indexOf(valorAnterior);
if (index > -1) {
array.splice(index, 1); // remove
}
var valor = $(this);
verificaValoresRepetidos(valorAtual, valor, array);
});
}
function verificaValoresRepetidos(valorAtual,valor,array){
if(valorAtual != ""){
for(var j = 0; j<array.length; j++){
if(valorAtual === array[j] ){
alert("Valor Digitado: "+valorAtual+"\nValor Repetido!!");
valor.val("");
return false;
}
}
array.push(valor.val());
console.log(array.toString());
}
}