J'essaie de créer une page d'état qui vérifie la base de données pour l'état du travail toutes les 5 minutes, puis met à jour l'utilisateur sur l'état du travail.
Donc une fois le travail terminé, je veux passer de la page courante à la page de résultat.
Pour mettre à jour le statut im en utilisant JavaScript :
function() {
setInterval(function() {
var uuid =" \'${uuid}\'";
var jobid =" \'${jobid}\'";
console.log();
$('#checkstatus').load('/jobque/connectdatabase',{jobid:jobid,uuid:uuid});
}, 5000);
});
La vérification de l'état fonctionne correctement. J'ai essayé d'utiliser la redirection ou la redirection, mais ces deux termes chargent la page de résultats dans la page actuelle. Je veux aller à la page suivante pas charger dans la page actuelle ..
Quelles sont les autres options disponibles ?
Votre javascript utilise jquery pour charger les résultats d'un appel à une action de contrôleur dans l'élément nommé.
Pourquoi ne pas vérifier le résultat de votre appel à l'action du contrôleur et s'il indique un succès, utilisez alors javascript pour rediriger vers la page souhaitée.
action du contrôleur :
def checkStatus() {
if (status_check_ok) {
render 'url_of_page_for_redirect'
return
}
render status:409 // failure
}
javascript sur la page Web :
$.ajax({
timeout:5000,
type: 'POST',
url: controller_action_url_for_checkStatus,
success: function(data){
window.location.href=data
},
error: function(data){
// do something else
}
});
Cet article est collecté sur Internet, veuillez indiquer la source lors de la réimpression.
En cas d'infraction, veuillez [email protected] Supprimer.
laisse moi dire quelques mots