Good evening guys, I made a javascript to correct a person's registry in order to create the First and Last name , for example, João da Silva. p>
I got what I wanted when the user types everything in the box. However, if the user types everything in the upper box (JOÃO DA SILVA), the javascript does not correct and leaves everything in the same box. I would also like it to be corrected if it were also typed in the upper box, in case the user forgets CAPSLOCK on.
function formatanome(nome){
var letra, tamanho;
tamanho = nome.length;
for (var i=0; i<tamanho; i++)
{
letra = nome.charAt(i);
if (letra== " ")
if ((i+1)<tamanho)
{
letra = nome.charAt(i+1).toUpperCase();
nome = nome.substring(0, i+1);
nome += letra;
nome += document.getElementById("nome").value.substring(i+2, tamanho);
}
}
if (tamanho>0)
{
letra = nome.charAt(0).toUpperCase();
nome = nome.substring(1, tamanho);
nome = letra + nome;
}
document.getElementById("nome").value = nome;
}
<html>
<script type="text/javascript" src="js.js"></script>
<form name="dispositivo">NIP<input id="nip" type="text" size="8" onblur="inteiro()"/>
ID<input id="resultado" type="readonly" size="8" />
NOME<input id="nome" type="text" size="40" onblur="formatanome(this.value)"/>
</form>