Ir para conteúdo

POWERED BY:

Arquivado

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

olimpia

Problemas com Ajax

Recommended Posts

O conteudo de um DIV é atualizado com o conteudo de varias paginas utilizando Ajax

No IE e no Opera esta funcionando certo, a altura do DIV é redimencionada relativamente ao tamanho da pagina transferida usando Ajax.

Agora no Firefox isto não acontece e a altura do DIV permanece sempre a mesma, e o texto fica fora das bordas do DIV

Existe alguma para que isto funcione?

 

-----------------------------------------------------------------

 

Outro problema é que utlizo palavras com caracteres especiais em algumas paginas(acento, Ç ), se a mesma for aberta diretamente no browser funciona normal, os carcteres são reconhecidos

 

Agora se carregar a pagina usando o metodo do Ajax, este caracters nçao são reconhecidos, ficam como simbolos. O que tenho que fazer para que isto funcione?

 

------------------------------------------------------------------

Estou usando o Ajax conforme este link http://www.tableless.com.br/ajaxdemo/

Abaixo o codigo que passa o Html da pagina para o conteudo do DIV

retorno=unescape(xmlhttp.responseText.replace(/\+/g," "))document.getElementById(id).innerHTML=retorno

Compartilhar este post


Link para o post
Compartilhar em outros sites

opa

Agora no Firefox isto não acontece e a altura do DIV permanece sempre a mesma, e o texto fica fora das bordas do DIVExiste alguma para que isto funcione?

isso depende do CSS da sua pag, provavelmente ele deve ser invalido ao padroes w3, vou te dizer cara, para fazer um site crossbrowser é fodz alot, o IE nao segue nenhum padrao, ou melhor, ele segue o padrao que ele mesmo criou, assim ficando realmente complicado deixar o CSS exatamente igual aos outros browserenfim posta ai o CSS para a gente ver se da um jeito

Agora se carregar a pagina usando o metodo do Ajax, este caracters nçao são reconhecidos, ficam como simbolos. O que tenho que fazer para que isto funcione?

bom, funcionava porque antes era HTML, apartir da hora que voce esta usando Ajax sua pag fica Xhtml, motivo ? o Ajax se chama na realidade: XMLHTTP e o Xhtml nao aceita esses acentos... entao você tem que codificar o texto de retorno... no caso do php a gente usa urlencode() para encodar e usa o

unescape(xmlhttp.responseText.replace(/\+/g," "))

para decodificar, ja tentou assim?[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Em relação ao conteudo que estava ficando fora do DIV no Firefox, era o css mesmo, a propriedade height estava com um valor padrão. No IE quando o conteudo era maior que o que estava definido o DIV se ajustava automatico, agora no Firefox não. Então coloquei assim height:auto;.

 

Agora em relação ao Ajax, o HTML é recuperado em Xhtml, certo, onde o mesmo não aceita acentos. Mas como faço para que os acentos seja mostrado da forma correta na pagina ?

Já estou fazendo como abaixo e não da certo

unescape(xmlhttp.responseText.replace(/\+/g," "))
Alguma outra maneira que possa ser feita ?

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.