Quiero mostrar un diálogo de JQuery condicionalmente en el evento de clic de un hipervínculo.
Tengo un requisito como en condition1 abrir un diálogo de JQuery y si condition1 no se satisface, navegue a la página como se hace referencia en la etiqueta 'href' de cuyo evento de clic está en cuestión.
Puedo llamar a una función en el evento de clic del enlace. Esta función ahora verifica dicha condición ejecutando otra URL (que ejecuta mi controlador Spring y devuelve la respuesta).
Todo funciona perfectamente con solo window.open bloqueado por el bloqueador de ventanas emergentes.
$('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 e.preventDefault();
elimino del código, el bloqueador de popup no bloquea la página, sin embargo, para la condición 1, abre el diálogo y abre la página 'href'.
Si resuelvo uno, crea problemas para otro. No puedo hacer justicia a ambas condiciones simultáneamente.
¿Podría ayudarme a resolver este problema, por favor?
Una vez que esto se resuelve, tengo otro problema que resolver, es decir, la navegación en el evento OK del diálogo :)