Xmlhttprequest
#62
Posted 25/05/2006, 09:56
Pra que utilizar AJAX então? Se não há necessidade de alterar os dados Run-Time?
é q eu to montando uma ordem de compra
ae o vendedor pega um lista de clientes cadastrados e já traz todas as infos do cliente escolido =P
#63
Posted 25/05/2006, 09:57
Olha só _vina contrariando o que o Bala disse...(não que ele esteja errado) Você pode simplismente utiliza uma div com uma ID para identifica-la e assim escrever nela o que você desejar
Ficaria assim:
..... bla bla bla ....
document.getElementById("resultado"). innerHTML = ValorAescrever ;
.... bla bla bla bla .....
</script>
<div id="resultado"> </div>
Falopa!
#64
Posted 25/05/2006, 10:01
E ai Bala! Tudo bom?!
Olha só _vina contrariando o que o Bala disse...(não que ele esteja errado) Você pode simplismente utiliza uma div com uma ID para identifica-la e assim escrever nela o que você desejar
Ficaria assim:
..... bla bla bla ....
document.getElementById("resultado"). innerHTML = ValorAescrever ;
.... bla bla bla bla .....
</script>
<div id="resultado"> </div>
Falopa!
Vlw falopa! não tinha pensado em DIV
#66
Posted 25/05/2006, 10:15
Ai Bala responde isso aqui pra mim...
http://forum.wmonlin...ndpost&p=700547
E aproveitando o post.
Eu tenho as instruções XML pra fazer as transferencias mas eu não consigo criar um unico arquivo que contenha todas as funcoes de leitura de determinada página
Por exemplo eu tenho uma pagina de cadastro onde o usuario escolhe o estado e eu preciso resgatar as cidades nesta pagina eu tenho um XHTMLHTTPREQUEST e na pagina onde eu faço uma consulta dos dados do usuario eu tenho outro e sempre que tento colocar duas funçoes no mesmo arquivo js dá erro ou para de funcionar o AJAX...
Voce pode me dar uma ideia de como seria pra resgatar dados de páginas diferentes num mesmo script sem ter que ficar escrevendo a parte do XML...
Falopa!
#67
Posted 25/05/2006, 10:34
vlw
Balala
eu to fazendo assim pq essas informações não podem ser alteradas. listo o cliente apareceu as infos, ae ele parte para as compras =P
#68
Posted 25/05/2006, 10:41
Veja o exemplo:
<input name="campo" type="text" id="campo" value="valor" readonly="">
Falopa!
#69
Posted 25/05/2006, 11:09
http.onreadystatechange = handleHttpResponse; function handleHttpResponse() { campo_select = document.forms[0].subcategoria; if (http.readyState == 4) { campo_select.options.length = 0;
http2.onreadystatechange = handleHttpResponse2; function handleHttpResponse2() { campo_select = document.forms[0].subcategoria; if (http.readyState == 4) { campo_select.options.length = 0;
Repare que também terá que criar um novo Objeto:
var http = getHTTPObject();
var http2 = getHTTPObject();
#70
Posted 25/05/2006, 11:50
Levando-se em conta o tamanho do arquivo Js no final do projeto seria mais viavel criar em cada página o codigo necessário para a consulta AJAX...
Isso para evitar o carregamento de Scripts que talves não seja usado pelo usuário uma vez que algumas funcoes somente seriam usadas se o usuário acessar determinado fomulário ou consulta.
Qual seria a melhor solução?
Para evitar transferencia de arquivos inuteis, em meu site tenho hoje cerca de 180000 visualizações, eu estou passando ele todo pra WebStandard e vou passar pra AJAX em breve, para tentar diminuir a taxa de transferencia e a demora no carregamento.
Falopa!
#71
Posted 25/05/2006, 14:06
Então, em relação a mais consultas na mesma página, você precisa definir os eventos diferentes, ou seja, duplicar o que você comentou no tópico:
http.onreadystatechange = handleHttpResponse; function handleHttpResponse() { campo_select = document.forms[0].subcategoria; if (http.readyState == 4) { campo_select.options.length = 0;http2.onreadystatechange = handleHttpResponse2; function handleHttpResponse2() { campo_select = document.forms[0].subcategoria; if (http.readyState == 4) { campo_select.options.length = 0;
Repare que também terá que criar um novo Objeto:
var http = getHTTPObject();
var http2 = getHTTPObject();
Balala eu fiz essas mudanças aki no meu e não esta funcionando essa segunda parte veja
<script language="javascript"> function pesquisar_dados( valor ) { alert ( valor ); http.open("GET", "consultar.php?IdClientes=" + valor, true); http.onreadystatechange = handleHttpResponse; http.send(null); } function handleHttpResponse(){ campo_text = document.forms[0].subcategoria; partes = http.responseText.split("|"); //partes[0] == txtEnd //partes[1] == txtEstato //partes[2] == txtCep //partes[3] == txtCidade //partes[4] == txtCpf //partes[5] == txtRg //partes[6] == txtBairro //partes[7] == txtFone //partes[8] == txtFax //partes[9] == txtCelular //partes[10] == txtEmail //partes[11] == txtFone if (http.readyState == 4) { document.getElementById("txtEnd").innerHTML = partes[0]; document.getElementById("txtEstado").innerHTML = partes[1]; document.getElementById("txtCep").innerHTML = partes[2]; document.getElementById("txtCidade").innerHTML = partes[3]; document.getElementById("txtCpf").innerHTML = partes[4]; document.getElementById("txtRg").innerHTML = partes[5]; document.getElementById("txtBairro").innerHTML = partes[6]; document.getElementById("txtFone").innerHTML = partes[7]; document.getElementById("txtFax").innerHTML = partes[8]; document.getElementById("txtCelular").innerHTML = partes[9]; document.getElementById("txtEmail").innerHTML = partes[10]; } } function pesquisar_dado( valor ) { alert ( valor ); http.open("GET", "consultarProdutos.php?IdProd=" + valor, true); http2.onreadystatechange = handleHttpResponse2; http.send(null); } function handleHttpResponse2(){ campo_text = document.forms[0].subcategoria; partes = http.responseText.split("|"); //partes[0] == CodProd //partes[1] == txtNome //partes[2] == txtLP //partes[3] == txtTamanho //partes[4] == txtPreco if (http.readyState == 4) { document.getElementById("CodProd").innerHTML = partes[0]; document.getElementById("txtNome").innerHTML = partes[1]; document.getElementById("txtLP").innerHTML = partes[2]; document.getElementById("txtTamanho").innerHTML = partes[3]; document.getElementById("txtPreco").innerHTML = partes[4]; } } function getHTTPObject() { var xmlhttp; /*@cc_on @if (@_jscript_version >= 5) try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) { xmlhttp = false; } } @else xmlhttp = false; @end @*/ if (!xmlhttp && typeof XMLHttpRequest != 'undefined') { try { xmlhttp = new XMLHttpRequest(); } catch (e) { xmlhttp = false; } } return xmlhttp; } var http = getHTTPObject(); var http2 = getHTTPObject(); </script>
Edição feita por: _vina, 25/05/2006, 14:50.
#72
Posted 31/05/2006, 20:30
Escolher o curso (curso1, curso2, curso3...) se o curso escolhido foi o "curso1", carregar os niveis (1, 2, 3)deste curso em outro "select", se o nivel escolhido para o curso1 for 1, carregar em um terceiro "select" as turmas disponiveis referentes ao curso e nivel escolhido.
Oque eu nao estou conseguindo fazer 'e carregar as turmas referentes aos cursos e niveis escolhidos pois quando chamo a função que vai carregar as turmas (onChange no select niveis)somente é testada a variavel do nivel e não do curso e nivel.
Obs. Sou iniciante.
#73
Posted 06/06/2006, 12:53
Eu ví que algumas pessoas tirem problemas com caracteres acentuados e conseguiram resolver, mas eu nem por decreto estou conseguindo.
Para testar eu fiz assim:
<? header("Content-type: text/html;"); $nome = strip_tags(addslashes($_GET["nome"])); echo "<?xml version=\"1.0\" encoding=\"iso-8859-1\">"; echo "<font color=\"#FFFFFF\">".$nome."</font>"; ?>Que foi como o Klaus conseguiu resolver, mas mesmo assim não está dando..
Eu digito "pára" e retorna "p?ra".
Alguém pode me dar um help?
Flws...
Até mais
#74
Posted 06/06/2006, 14:00
urlencode() e depois que resgata-lo utilize urldecode() para descodifica-los assim os carácteres receberam informações do html padrão no caso de espaços ficariam %20 e assim por diante...
Falopa!
#75
Posted 06/06/2006, 14:06
Se for PHP, ok, mas como eu codifico antes de enviar as informações se o que tem na URL é exatamente o texto do campo do formulário?
Flws...
Está assim o java script:
function enviar() { nome = document.getElementById("nome_scrap").value; msg = document.getElementById("msg_scrap").value; url = "nome=" + url_encode(nome) + "&msg=" + url_encode(msg); http.open("GET", "send_scrap.php?"+url, true); http.onreadystatechange = handleHttpResponse; http.send(null); }E retornando assim:
function handleHttpResponse() { resultado = document.getElementById("div_scrap"); if (http.readyState == 4) { resultado.innerHTML = url_decode(http.responseText); } }
Essas funções, url_encode() e url_decode() são umas que eu peguei no phpbrasil.Até mais
0 user(s) are reading this topic
0 membro(s), 0 visitante(s) e 0 membros anônimo(s)