Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Aee galera, quem é que pode me ajudar nisso?
Preciso jogar uma string COM CARACTERES ESPECIAIS para outra página onde vou trabalhar essa string com ASP.
Atualmente estou fazendo assim: pegando o texto, concatenando na url da página ASP e mandando abrir a página, ae eu pego o texto com request.querystring e uso.... só que quando o texto tem caracteres especiais como "ç, á, é..." não funciona....
Qual a melhor maneira deu fazer isso?
É uma busca em ajax que eu to fazendo.
Tá tudo funcionando, menos esse aspecto dos caracteres especiais...
se precisarem do código, avisem que eu posto!
esse problema eu sei resolver cara, tb aconteceu cmg em outra ferramenta que desenvolvi com AJAX...
O meu problema agora é como encodar caracteres especiais para colocar na URL de uma forma que eu possa desencodar com o ASP em outro arquivo... ou entao uma outra maneira de se fazer isso.
Mas valeu a ajuda! brigadao!
não entendi bem, mas com Server.URLEncode não resolve?
vou explicar melhor entao:
meu java script:
if (document.getElementById('rua') != null){
var rua = document.getElementById('rua').value
alert(rua)
rua = "&rua="+rua
}
else {
var rua = ""
}
xmlhttp.open("POST", "buscado_linhas.asp?"+buscado+tipo_busca+tipo_rua+linha+rota+rua,true);
xmlhttp.setRequestHeader('Content-type','application/x-www-form-urlencoded; charset=iso-8859-1');
xmlhttp.onreadystatechange=function() {
document.getElementById('resultado').innerHTML = 'Aguarde...'
if(xmlhttp.readyState == 4){
document.getElementById('resultado').innerHTML = xmlhttp.responseText
}}
xmlhttp.send('aloha')o código ASP:
rua = Lcase(Request.QueryString("rua"))
ae depois eu tratava a variavel e talz.... só que se eu puxar o valor dessa varíavel nesse momento, os caracteres especiais que foram enviados ficam aparecendo como "?"
o charset do html/asp está correto?
os arquivos (tanto o .asp como o que eu uso pra puxar os dados do banco) possuem:
Response.Charset="ISO-8859-1"
e
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />ae o "ç" aparece como "ã§" por exemplo...
acho que o problema está no javascript, na hora que eu monto a url... ele simplesmente pega os caracteres especiais, taca na url e manda abrir... pensei em usar encodeURI, escape ou coisa do tipo no javascript mas dps eu n saberia "desencodar" a url com o ASP...
Pelo que pude perceber o encodeURI irá encodar como um URLEncode, então será apenas usar o Request.QueryString()
continua aparecendo ç como "ã§" e se eu retirar o charset de iso-8859-1, a resposta ao invés de "ã§" aparece como "?" ...
xmlhttp.open("POST", "buscado_linhas.asp?"+buscado+tipo_busca+tipo_rua+linha+rota+rua,true);
xmlhttp.setRequestHeader('Content-type','application/x-www-form-urlencoded; charset=iso-8859-1');essa parte não serve pra nada é melhor para melhor acesso de AJAX de uma lida nessa minha tuto:[http://forum.imasters.com.br/index.php?sho...=196406&hl=](http://forum.imasters.com.br/index.php?showtopic=196406&hl=)
isso é pra você entender AJAX(aplicação simples e boa)
leia sobre o ASP tbm no mesmo tópico
adicione ao ASP(strings q você retornar)
não use em JAVASCRIPT(UNESCAPE) é meio mal aplicada essa ideia(sem querer ofender)
mas dah alguns problemas principlamente com espaços
acredite é verdade a melhor solução é o Charset
porem você tem de usar os dois UTF-8 e ISO-8859-1
só que lógico separados
=]
eu acho que serve sim, é porque eu não postei o código inteiro aqui no forum mas você pode ver ele no link...
mas to indo ler o seu tópico lá, vlw a ajuda! (d novo)
*update
po cara, o meu problema não é esse que você explicou nakele topico nao... meu problema sao os caracteres especiais. Eu to conseguindo abrir e atualizar o conteudo na mesma div várias vezes sim.
E eu não to usando o unescape mais não, da última vez tava tentando com o endodeuri...
eu sei que seu problemana não era esse
eu queria lhe mostrar outra maneira de usar o AJAX
e eu falei sobre o CHARSET:
>
acredite é verdade a melhor solução é o Charset
porem você tem de usar os dois UTF-8 e ISO-8859-1
só que lógico separados
bem... nesse link tem uma matéria meia bagunçada de Ajax, mas o que importa é que nessa matéria um dos comentaristas faz referência a erros de acentuação, que pode te ajudar...
dá uma olhada... qualquer coisa posta aí..
http://www.imasters.com.br/artigo/4424/asp...tilizando_ajax/