ventana pagina modal hacer formulario emergente dinamico con como bootstrap automaticamente abrir java browser wicket modal-dialog

java - pagina - ventana modal bootstrap



¿Cómo vencer la ventana emergente del diálogo del navegador al llamar a Wicket setResponsePage() desde la ventana modal? (4)

Creo que setResponsePage() debería ir acompañado de algunos otros métodos para comportarse correctamente. Por ejemplo, a menudo setRedirect(true) cuando uso esta técnica. No estoy seguro de qué está sucediendo detrás de escena allí, pero quizás intente eso.

Cómo vencer la ventana emergente de diálogo de IE y Firefox al intentar configurarResponsePage () desde una wicket modalWindow por debajo. La ventana emergente del cuadro de diálogo exige una respuesta a: "Esta página le pide que confirme que desea irse; es posible que los datos que ingresó no se guarden".

AjaxLink signInContainer = new AjaxLink("signInContainer") { @Override public void onClick(AjaxRequestTarget target) { target.appendJavascript("Wicket.Window.unloadConfirmation = false;"); modalWindow.close(target); setResponsePage(SignInPage.class); modalWindow.close(target); } };

-Rico


target.appendJavascript("Wicket.Window.unloadConfirmation = false;"); no funciona porque debe ejecutarse antes de modal.show(target); .

Usted podría anteponer, en lugar de agregar, la secuencia de comandos al abrir la ventana:

add(new AjaxLink<Void>("show") { @Override public void onClick(AjaxRequestTarget target) { target.prependJavascript("Wicket.Window.unloadConfirmation = false;"); modal.show(target); } });

o agregue un comportamiento, para ejecutarlo en onload :

modal.add(new AbstractBehavior() { @Override public void renderHead(IHeaderResponse response) { response.renderOnLoadJavascript("Wicket.Window.unloadConfirmation = false;"); } });

Sin embargo, debe setResponsePage() antes de abrir la ventana modal, no cuando se navega fuera de la página ( setResponsePage() ).


En wicket 6.x puedes simplemente configurar showUnloadConfirmation en falso:

final ModalWindow modalWindow = new ModalWindow("modalWindow"); modalWindow.showUnloadConfirmation(false);


EDITAR: Este es un truco, usa la alternativa descrita en mi otra respuesta .

Prueba esto:

public void onClick(AjaxRequestTarget target) { modal.close(target); CharSequence url = urlFor(HomePage.class, new PageParameters("gone=true")); target.appendJavascript("window.location=''" + url + "'';"); }