Autor Tópico: atualizar campo de x em x segundos  (Lida 1156 vezes)

Agostinho

  • Avançado
  • ****
  • Mensagens: 277
    • Email
atualizar campo de x em x segundos
« Online: Março 12, 2012, 03:25:56 pm »
Existe alguma forma de atualizar um campo via ajax de x em x segundos na tela usando controle?, ja procurei pelo campo timeout em ferramentas/opções mas o mesmo nao existe e preciso disto, alguma dica por favor?

Haroldo

  • Expert
  • *****
  • Mensagens: 6293
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re:atualizar campo de x em x segundos
« Responder #1 Online: Março 12, 2012, 05:44:06 pm »
andei postando aqui um exemplo deste tipo:

http://iw.servehttp.com/sc/iw/app/Publico/Teste_relogio/Teste_relogio.php.

Método javascript: relogio
Código: [Selecionar]
//criamos a variavel objeto momentoAtual, que contera a data e hora atual
var momentoAtual = new Date();
 
//Pegamos em variaveis separadas, hora, minuto e segundo


var hora = momentoAtual.getHours();
var minuto = momentoAtual.getMinutes();
var segundo = momentoAtual.getSeconds();
 
//verificamos se segundo, minuto e hora é menor que 9 se for concatenamos adicionando um zero a esquerda

if(segundo<=9) {
segundo = '0'+segundo;
}
if(minuto<=9) {
minuto = '0'+minuto;
}


horaImprimivel =hora +':'+minuto+':'+segundo+' <div style="width: '+segundo+'%; height:20px;border: 1px solid #E78F08; vertical-align: middle; text-align:center; background-color: #E78F08;color: White ;font-weight: bold;">'+segundo+'%</div>';


segundo = Math.round(momentoAtual.getSeconds()+(momentoAtual.getSeconds()*0.66))

;
progressbar_value='<div style="width: '+segundo+'%; height:20px;border: 1px solid #E78F08; text-vertical-align: middle; text-align:center; background-color: #E78F08;color: White ;font-weight: bold;">'+segundo+'%</div>';
//utilizando jquery exibimos no span de id relogio o relogio

$('#_relogio').html(horaImprimivel);
$('#progressbar2').html(progressbar_value);

$.ajax({
 url:"processado.txt",

 success:function(data){

 //alert(data);

if (data!="FIM") {
    htmlcodigo='<div style="width: '+data+'%; height:20px;border: 1px solid blue; text-vertical-align: middle; text-align:center; background-color: blue;color: White ;font-weight: bold;">'+data+'%</div>';
    $('#progressbar4').html(htmlcodigo);
}
   

 }

})



setTimeout('relogio()',1000);

Evento Onload:
Código: [Selecionar]
echo "<script>
$(document).ready(function(){
      relogio();
});
</script>";


* Antes de postar,  faça sempre uma pesquisa no forum, pois diversas soluções já foram postadas.
« Última modificação: Março 12, 2012, 05:45:38 pm por Haroldo »

Agostinho

  • Avançado
  • ****
  • Mensagens: 277
    • Email
Re:atualizar campo de x em x segundos
« Responder #2 Online: Março 12, 2012, 06:57:54 pm »
Obrigado pelo seu retorno Haroldo, como sempre nos auxiliando, muito grato, implementei o código que vc me passou e criou o campo label _relogio, o mesmo funcionou perfeito.