Hice una pequeña ventana emergente de calendario en Javascript. Muy simple, usando el control Calendar de ASP.NET. Llamo a la ventana emergente con showModalDialog. En la ventana modal, el cambio del mes en curso del mes, ocasiona problemas a causa de la devolución de datos, y que se encuentra en varios lugares que la solución es poner:javascript - showModalDialog no devuelve valor en Chrome
<base target="_self"/>
en la parte de la cabeza del archivo aspx. Todo funciona bien ... excepto por una cosa, y solo en Google Chrome. Para recuperar la fecha seleccionada, configuro returnValue de la ventana emergente a la fecha seleccionada en el calendario. En IE y Firefox, siempre funciona. En Chrome, sin embargo, funciona solo si no cambio el mes actual en el calendario. Tan pronto como lo cambio, el valor de retorno no se transfiere a la persona que llama de showModalDialog. Es como si la ventana modal ya no fuera la original; el valor de retorno no está definido.
¿Alguien ha experimentado ese comportamiento y tiene una sugerencia para que funcione? Traté de usar dialogArguments para mantener el rastro de la ventana de la persona que llama pero se pasa solo a la primera ventana modal (se pierde después de cambiar el mes actual).
El código en el procedimiento de llamada:
var d = window.showModalDialog(...)
El código en la ventana modal:
window.returnValue = selectedDate;
self.close();
Como dije a Teemu, selectedDate y window.returnValue siempre estén las correctas. Sin embargo, en el caso de Google Chrome (después de un cambio de mes en el calendario), showModalDialog no devuelve returnValue yd no está definido.
Suena más como su procedimiento para cambiar el 'returnValue' en el diálogo modal falla en Chrome – Teemu
En ese caso, ¿por qué funciona cuando me quedo en el mes actual? – ConnorsFan
Difícil de decir sin ver el código ... – Teemu