Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá
Olá,
Eu tenho um campo texto que, à medida que eu vou digitando o numero de uma pasta, por exemplo, 006000, ele vai no banco e busca os dados ref. à esta pasta. Abaixo dos dados, eu tenho alguns checkboxes que eu posso setar ou não. Se eu alterar o valor de um desses checkboxes, eu tenho a opção de clicar num submit que salva essas alterações feitas no checkboxes. Após isso, o campo texto para digitar algum numero de pasta volta a ser mostrado na tela.
Agora é que vem o porém!
Se eu digitar o número da pasta que eu acabei de alterar, meu ajax não me trás os dados com as alterações feitas há pouco, mas sim, os dados sem estas alterações, ou seja, como estava antes de alterar!!!
Vou postar o código que estou utilizando aqui.:
cadastro.php
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>::Protocolo</title>
<style type="text/css">
<!--
body {
background-image: url(imgs/fundo.gif);
}
-->
</style></head>
<script src="ajax.js" language="javascript" type="text/javascript"></script>
<script>
<!--
function recuperardados() {
//if (document.form1.tpasta.lenght == 6)
// {
valor=document.form1.tpasta.value;
// }
var ajax = new AJAX();
ajax.Updater("listar.php?pasta="+valor,"conteudo","get","");
}
//-->
</script>
...
...
...
<form name="form1" method="post" action="cadastro.php">
<label>
Pasta:
<input name="tpasta" type="text" id="tpasta" size="7" maxlength="7" onKeyUp="recuperardados()">
<br>
<br>
</label>
<div id="conteudo"></div>
...
...
...
código do ajax.js
function AJAX() {
this.Updater=carregarDados;
function carregarDados(caminhoRetorno,idResposta,metodo,mensagem) {
var conteudo=document.getElementById(idResposta)
conteudo.innerHTML= mensagem;
var xmlhttp = getXmlHttp();
//Abre a url
xmlhttp.open(metodo.toUpperCase(), caminhoRetorno,true);
//Executada quando o navegador obtiver o código
xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState==4){
//Lê o texto
var texto=xmlhttp.responseText;
//Desfaz o urlencode
texto=texto.replace(/\+/g," ");
texto=unescape(texto);
//Exibe o texto no div conteúdo
var conteudo=document.getElementById(idResposta);
conteudo.innerHTML=texto;
}
}
xmlhttp.send(null);
}
}
function getXmlHttp() {
var xmlhttp;
try{
xmlhttp = new XMLHttpRequest();
}catch(ee){
try{
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}catch(e){
try{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}catch(E){
xmlhttp = false;
}
}
}
return xmlhttp;
}
Obrigado Mário.Olá amigos,
será que alguém teria uma solução, ou um outro código para que este problema possa ser solucionado?
O que me parece e é o que está acontecendo é que o ajax carrega os valores uma vez, mas depois, mesmo com a alteração de valores no banco de dados, não está indo buscar novamente no banco, trazendo sempre o mesmo valor, até que eu feche e abra novamente o Internet Explorer.
Ajudem, por favor.
Obrigado.
o que ja fez?
do que precisa exatamente?