Oui, cela est possible, mais il y a beaucoup de pièces dont vous aurez besoin:
D'abord, un code côté serveur pour qui peut vérifier si oui ou non un enregistrement a été mis à jour. Deuxièmement, vous devrez utiliser jQuery's ajax features pour envoyer une requête ajax de la page de temps en temps. Dans la fonction de rappel pour cette requête ajax, vous pouvez vérifier si la réponse ajax indique que l'enregistrement a été mis à jour. Troisièmement, vous devez simplement décider comment vous voulez informer l'utilisateur que l'enregistrement a changé. Vous pourriez simplement insérer du texte quelque part sur la page, ou vous pourriez avoir envie et créer une sorte de boîte de dialogue pour les faire savoir. Ou, si vous le souhaitez, vous pouvez même rafraîchir la page pour eux au lieu de leur dire qu'il a été mis à jour.
Quelque chose comme ceci:
function checkForUpdates() {
$.getJSON('/theUrlForUpdateChecker', { record_id: 23 }, function(json) {
if (json.isRecordUpdated) {
var message = 'The record has been updated, please refresh the page';
$('#notificationArea').text(message);
}
});
}
//execute it every 60 seconds (60000 milliseconds):
setInterval(checkForUpdates, 60000);
J'utilise setInterval pour simplifier, mais pour l'intérêt de l'économie des ressources que vous voudriez probablement utiliser setTimeout à plusieurs reprises, et arrêter la vérification des mises à jour une fois que vous connaissez un dossier a été actualisé.