Ir para conteúdo

POWERED BY:

Arquivado

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

yogodoshi

Enviando por Javascript e recebendo em ASP

Recommended Posts

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!

Compartilhar este post


Link para o post
Compartilhar em outros sites

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/

Compartilhar este post


Link para o post
Compartilhar em outros sites

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!

Compartilhar este post


Link para o post
Compartilhar em outros sites

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')

onde buscado, tipo_busca e talz sao outros parametros.... tá tudo funcionando, o único problema é quando o valor de rua (que é um text field) vem com algum caracter especial

 

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 "?"

Compartilhar este post


Link para o post
Compartilhar em outros sites

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...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pelo que pude perceber o encodeURI irá encodar como um URLEncode, então será apenas usar o Request.QueryString()

Compartilhar este post


Link para o post
Compartilhar em outros sites

continua aparecendo ç como "ã§" e se eu retirar o charset de iso-8859-1, a resposta ao invés de "ã§" aparece como "?" ...

Compartilhar este post


Link para o post
Compartilhar em outros sites

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=

 

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

 

=]

Compartilhar este post


Link para o post
Compartilhar em outros sites

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...

Compartilhar este post


Link para o post
Compartilhar em outros sites

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

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.