Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Preciso de uma validação em Javascript que não deixe que o usuário digite 3 caracteres repetidos em um Textarea.
>
,Mar 1 2003, 04:26 AM] Este é um codigo que fiz, não sei se vai lhe servir mas faz o que você pediu, talvez você possa modifica-lo para atender as suas necessidades.
<html> <head> <title>Rafael Ribeiro da Silva</title> <script language="javascript"> <!-- var abc = new Array(26); var alfa = "a b c d e f g h i j k l m n o p q r s t u v w x y z"; alfa = alfa.split(' '); for (i = 0; i < abc.length; i++) { abc[i] = 0; // Atribui o valor 0 para todas as letras } function valida() { var txt = document.all("ta1").value; txt = txt.split(''); for (i = 0; i < txt.length; i++) { for (j = 0; j < alfa.length; j++) { if (txt[i] == alfa[j]) { abc[j]++; } } } for (i = 0; i < abc.length; i++) { if (abc[i] > 3) { alert("Você não pode digitar mais do que 3 letras iguais"); } } // apos validar uma vez todo o valor do array abc retorna a 0 // para quando clicarem validar() novamente o resultado sair correto. for (i = 0; i < abc.length; i++) { abc[i] = 0; } } --> </script> </head> <body> <form> <textarea id="ta1"></textarea> <input type="button" value="Validar" onclick="valida()"> </form> </body></html>Eu testei com o meu nome, eu digito "Rafael" e nada,digito "Rafael Ribeiro" e nada,digito "Rafael Ribeiro da" e nada (a = 3),digito "Rafael Ribeiro da Silva" e BUM! hehe (a > 3).Espero ter ajudado!
Eu fiz isto e deu certo.function Valida(objeto){ var w,z,y,x; for(x=0;x < objeto.value.length;x++) { z = objeto.value.substring(x,x+1); if ((x >= 2 && z == y && z == w)) { alert('Não pode existir 3 caracteres repetidos'); objeto.focus(); return false; } else { y = w; w = z; z = '-'; } } return true;}A diferença é notavel hehee, valew por ter postado o código!
Este é um codigo que fiz, não sei se vai lhe servir mas faz o que você pediu, talvez você possa modifica-lo para atender as suas necessidades.
Eu testei com o meu nome,
eu digito "Rafael" e nada,
digito "Rafael Ribeiro" e nada,
digito "Rafael Ribeiro da" e nada (a = 3),
digito "Rafael Ribeiro da Silva" e BUM! hehe (a > 3).
Espero ter ajudado!