Je souhaite afficher une boîte de dialogue JQuery sous condition lors d'un événement de clic d'un lien hypertexte.
J'ai une exigence comme à condition1 d'ouvrir un dialogue JQuery et si la condition1 n'est pas satisfaite, accédez à la page référencée par la balise 'href' dont l'événement de clic est en question.
Je peux appeler une fonction sur l'événement de clic du lien. Cette fonction vérifie maintenant ladite condition en exécutant une autre URL (qui exécute mon contrôleur Spring et renvoie la réponse).
Tout fonctionne parfaitement avec seulement window.open étant bloqué par le bloqueur de popup.
$('a[href*=/viewpage?number]').live('click', function(e) {
e.preventDefault();
redirectionURL = this.href;
pageId= getUrlVars(redirectionURL)["number"];
$.getJSON("redirect/" + pageId, {}, function(status) {
if (status == null) {
alert("Error in verifying the status.");
} else if(!status) {
$("#agreement").dialog("open");
} else {
window.open(redirectionURL);
}
});
});
Si je supprime e.preventDefault();
du code, le bloqueur de popoup ne bloque pas la page, mais pour la condition1, il ouvre alors le dialogue et ouvre la page 'href'.
Si j'en résous un, cela crée un problème pour un autre. Je ne suis pas en mesure de rendre justice aux deux conditions simultanément.
Pouvez-vous m'aider à résoudre ce problème s'il vous plaît?
Une fois que cela est résolu, j'ai un autre problème à résoudre, à savoir la navigation sur l'événement OK du dialogue :)