Eu tenho um arquivo html básico que está anexado a um programa java. Este programa java atualiza o conteúdo de parte do arquivo HTML sempre que a página é atualizada. Desejo atualizar somente aquela parte da página após cada intervalo de tempo. Posso colocar a parte que gostaria de atualizar em a div
, mas não tenho certeza de como atualizar apenas o conteúdo de div
. Qualquer ajuda seria apreciada. Obrigado.
fonte
$('#thisdiv').load(document.URL + ' #thisdiv>*')
evita ter outro#thisdiv
dentro do original#thisdiv
Vamos supor que você tenha 2 divs dentro de seu arquivo html.
O próprio programa java não pode atualizar o conteúdo do arquivo html porque o html está relacionado ao cliente, enquanto o java está relacionado ao back-end.
Você pode, entretanto, comunicar-se entre o servidor (back-end) e o cliente.
Estamos falando de AJAX, que você consegue usando JavaScript. Recomendo usar jQuery, que é uma biblioteca JavaScript comum.
Vamos supor que você deseja atualizar a página a cada intervalo constante e, em seguida, pode usar a função de intervalo para repetir a mesma ação a cada x vezes.
Você também pode fazer assim:
Onde foo é uma função.
Em vez do alerta ("oi"), você pode executar a solicitação AJAX, que envia uma solicitação ao servidor e recebe algumas informações (por exemplo, o novo texto) que você pode usar para carregar no div.
Um AJAX clássico se parece com isto:
Onde o backend é capaz de receber dados POST'ed e é capaz de retornar um objeto de dados de informação, por exemplo (e muito preferível) JSON, existem muitos tutoriais por aí com como fazer isso, GSON do Google é algo que eu usado há algum tempo, você poderia dar uma olhada nele.
Não sou profissional com o recebimento do Java POST e o retorno de JSON desse tipo, então não vou dar um exemplo com isso, mas espero que seja um bom começo.
fonte
Você precisa fazer isso no lado do cliente, por exemplo, com jQuery.
Digamos que você queira recuperar HTML em div com ID
mydiv
:Você pode atualizar esta parte da página com jQuery da seguinte maneira:
No lado do servidor, você precisa implementar o manipulador para solicitações que chegam
/api/mydiv
e retornar o fragmento de HTML que vai dentro do mydiv.Veja este Fiddle que fiz para você como um exemplo divertido usando jQuery get com dados de resposta JSON: http://jsfiddle.net/t35F9/1/
fonte
Use
fetch
einnerHTML
para carregar conteúdo divExibir trecho de código
fonte
$.ajax(), $.get(), $.post(), $.load()
funções do jQuery enviamXML HTTP
solicitação internamente . entre estes, oload()
é dedicado apenas a um determinadoDOM Element
. Veja jQuery Ajax Doc . Os detalhes do controle de qualidade estão aqui .fonte