Estou desenvolvendo um CMS com Jquery e Ajax (e PHP). Por isso todo CMS é uma página só, tudo é feito de modo assincronico e as operações de banco é feito pelo Ajax.
Quando insiro um dado no banco, eu preciso atualizar ou dar f5 na página para ele aparecer numa tabela.
Precisava que ele populasse a tabela assim que terminasse de inserir o dado. Já estou inserindo pelo ajax. Só precisava que ele populasse sem dar refresh na página.
Primeiramente, para atualizar uma parte do código HTML , seja uma div ou uma tabela contendo dados:
$("#seu_elemento").load("pagina.html(ou extenção que for) #elemento_a_ser_atualizado") //parte da mesma página
Porém, posteriormente tive problema com IE (sempre :twisted: :twisted: :evil: :evil: :evil: :evil: ). O Load nao funciona no IE.
Fiquei até madrugada procurando solução (veja a hora do post), e descobri que IE tem um esquema de cache que impede a atualização pelo load() do jQuery.
Solução foi colocar esse código PHP (a página foi feita em PHP, se for Java, a soluçao é parecida):
<?php
header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Data já vencida
?>
esta solução atualiza a tabela ao clicar em um botão ou algo assim, como manter essa tabela atualizada automaticamente, por exemplo, a cada segundo ???