Ir para conteúdo
Fórum Script Brasil
  • 0

Formatar Nome


Guest freddys

Pergunta

Pessoal, gostaria de saber se alguém sabe como fazer ou indica algum script que faça o seguinte:

Tem um edit onde a pessoa digitará o nome dela, e independentemente se ela digitar em maiusculo ou minusculo, o nome seja convertido para Nome Sobrenome,

ou seja da maneira correta, iniciais maísculas e restantes minúscula, exceto de, da, e, etc.

Valeu quem puder ajudar!!!

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0

Maneiro, o ruim é que se a pessoa digitar com o Caps Look ligado, as letras não entram na formatação fica tudo maiúsculo, gostaria que ficassem Nome Sobrenome!

Não manjo de javascript por isso que peço se alguém puder ajudar a modificar o script, desde já agradeço!

Link para o comentário
Compartilhar em outros sites

  • 0

Adaptando o codigo:

<html>
<head>

<script language="JavaScript">
function x(texto)
{
   var letra, tamanho;
   
   tamanho = texto.length;
   for (var i=0; i<tamanho; i++)
   {
      letra = texto.charAt(i);
      if (letra== " ")
         if ((i+1)<tamanho)
     {
        letra = texto.charAt(i+1).toUpperCase();
        texto = texto.substring(0, i+1);        
        texto += letra;
        texto += document.getElementById("texto").value.substring(i+2, tamanho);
     }
   }
   
   if (tamanho>0)
   {
      letra = texto.charAt(0).toUpperCase();
      texto = texto.substring(1, tamanho);      
      texto = letra + texto;
   }
   document.getElementById("texto").value = texto;
}

</script>
</head>
<body>
<form>
<input type="text" value="" size="50" id="texto" onKeyUp="this.value = this.value.toLowerCase(); x(this.value)">
</form>
</body>
</html>

Link para o comentário
Compartilhar em outros sites

  • 0

Show de bola!

Sem querer abusar da bondade de vocês!

Mas tem mais um detalhe:

As palavras (da, dos, etc) ficam no padrão (Da, Dos, etc), teria como armazenar em uma array essas palavras, e quando elas estiverem no nome, deixá-las tudo em minúsculo?

Para ficar assim: Maria das Dores

e não assim: Maria Das Dores

Mais uma vez obrigado...

Editado por freddys_
Link para o comentário
Compartilhar em outros sites

  • 0

Bom montei um exemplo aqui, se alguém tiver forma mais simples é só postar:

<script>
function FormataNome(nome)
{
    if (nome.length > 0)
    {
        var ArrayNome = nome.split(" ")
        var tamanho = ArrayNome.length;

        for (i=0; i < tamanho; i++)
        {
            if (ArrayNome[i] != "da" && ArrayNome[i] != "de" && ArrayNome[i] != "do" && ArrayNome[i] != "das" && ArrayNome[i] != "dos")
            {
                ArrayNome[i] = ArrayNome[i].replace(ArrayNome[i].charAt(0),ArrayNome[i].charAt(0).toUpperCase());
            }
        }
        document.getElementById("nome").value = ArrayNome.join(" ");
    }
}
</script>


<input type="text" name="nome" onKeyUp="this.value = this.value.toLowerCase(); FormataNome(this.value)" size="50">

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...