Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Thiagojpa

[DICA] Bug ajax x IE - codificação

Recommended Posts

Fala galera!

 

 

Depois de muito chorar e xingar o Internet Explorer, enfim encontrei uma possível solução para a acentuação.

 

Acho que quem trabalhar com ajax aqui já passou por isso, no FF e Chorme funciona que é uma beleza, mas chega no IE...

=´(

Bom, tenho um sistema que funciona como um curso de idiomas e entre esses cursos, existe um curso de Russo. Por sua vez, Russo não aceita o charset iso-8859-1.

Procurando em fóruns encontrei a solução de colocar <%response.charset="iso-8859-1"%> na página que recebe os dados, e realmente funciona para PT.

 

Depois de muitos e muitos testes descobri que o erro não está no AJAX e sim um bug que o IE ao passar por queryString.

 

façam o teste:

 

Se vocês passarem desse jeito o erro acontece

 

pagina.asp?var=д

 

o resultado é este : ?

 

 

Agora passando desse jeito

 

pagina.asp?var=%D0%B4

 

o resultado é este: д

 

 

E qual a solução para ajax?

 

Basta ir no javascript e mandar codificar a URL

 

var URL = "pagina.asp?var="+campo;

 

Enviar.open("GET",encodeURI(URL), false);

 

 

o segredo está aqui : encodeURI(URL)

 

essa função transforma isso д em isso %D0%B4

Compartilhar este post


Link para o post
Compartilhar em outros sites

você não consegue usar o Server.HTMLEncode(string)

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.