Função para remover acentos de string.
Boa tarde pessoal.
Estou com dificuldades em substituir os acentos por caracteres normais em minha função.
function removeAcentos(palavra){
//DEFINO A VARIAVEL PALAVRA COMO SENDO UMA STRING
palavra = new String(palavra);
//CRIO UM ARRAY COM TODOAS AS LETRAS QUE DESEJO SUBSTITUIR
com_acento = new Array("á", "à", "â", "ã", "ä", "é", "è", "ê", "ë", "í", "ì", "î", "ï", "ó", "ò", "ô", "õ", "ö", "ú", "ù", "û", "ü", "ç", "Á", "À", "Â", "Ã", "Ä", "É", "È", "Ê", "Ë", "Í", "Ì", "Î", "Ï", "Ó", "Ò", "Ô", "Õ", "Ö", "Ú", "Ù", "Û", "Ü", "Ç");
//CRIO UM ARRAY COM TODAS AS LETRAS SUBSTITUTAS
sem_acento = new Array("a", "a", "a", "a", "a", "e", "e", "e", "e", "i", "i", "i", "i", "o", "o", "o", "o", "o", "u", "u", "u", "u", "c", "A", "A", "A", "A", "A", "E", "E", "E", "E", "I", "I", "I", "I", "O", "O", "O", "O", "O", "U", "U", "U", "U", "C");
//CRIO A NOVA VARIAVEL QUE SERA A PALAVRA SEM ACENTOS
nova='';
//EXECUTO UM FOR PARA PEGAR LETRA POR LETRA DA PALAVRA
for(i=0;i<palavra.length;i++) {
//ESTA VARIAVEL SERA USADA POSTERIORMENTE
gravou="";
//PEGO A LETRA
letra = palavra.substr(i,1);
//EXECUTO UM LOOP PARA COMPARAR A LETRA PEGA COM AS LETRAS QUE DESEJO SUBSTITUIR
for(x=0;x<46;x++){
//VERIFICO SE A LETRA EM QUESTAO ESTA NA ARRAY DE LETRAS QUE DESEJO SUBSTITUIR
if(letra==com_acento[x]){
//SE A LETRA ESTIVER NA ARRAY QUE DESEJO SUBSTITUIR EU ACRESCENTO A LETRA DA ARRAY SUBSTITUTA
nova+=sem_acento[x];
//ESTA VARIAVEL SERVE DE VERIFICADOR
gravou="ok";
}
}
//SE A VARIAVEL GRAVOU É DIFERENTE DE ok
if(gravou!="ok"){
//ADICIONO A LETRA ATUAL A NOVA VARIAVEL
nova+=letra;
}
}
//RETORNA A NOVA VARIAVEL
return nova;
}
alert(removeAcentos('ÁÉÍÓÚ'));
É isso ai pessoal. Minha função aparentemente esta correta mas não consegui identificar o porque que ela não consegue substituir as letras.
Se a palavra for passada direto pelo JS como coloquei no código acima a função executa normalmente.
Mas como estou utilizando uma palavra vinda de um campo input a função não executa.
Preciso da ajuda de vocês.
Qualquer dúvida estamos aqui.
Abraço.
Discussão (1)
Carregando comentários...