JavaScript - showModalDialog не возвращает значение в Chrome

Я сделал небольшое всплывающее окно календаря в Javascript. Очень просто, используя элемент управления Calendar из ASP.NET. Я вызываю всплывающее окно с showModalDialog. В модальном окне изменение текущего месяца календаря вызывает проблемы из-за обратной передачи, и я нашел в нескольких местах, что решение должно поставить:

<code><base target="_self"/>
</code>

в головной части файла aspx. Все отлично работает ... кроме одной вещи, и только в Google Chrome. Чтобы вернуть выбранную дату, я установил returnValue всплывающего окна на дату, выбранную в календаре. В IE и Firefox это всегда работает. Однако в Chrome это работает, только если я не изменяю текущий месяц в календаре. Как только я изменяю его, возвращаемое значение не передается вызывающей стороне showModalDialog. Как будто модальное окно больше не является оригинальным; возвращаемое значение не определено.

Кто-нибудь сталкивался с таким поведением и есть предложение заставить его работать? Я попытался использовать dialogArguments, чтобы отслеживать трассировку окна вызывающего, но оно передается только в первое модальное окно (оно теряется после изменения текущего месяца).

Код в вызывающей процедуре:

<code>var d = window.showModalDialog(...)
</code>

Код в модальном окне:

<code>window.returnValue = selectedDate; 
self.close();
</code>

Как я сказал Teemu, selectedDate и window.returnValue всегда верны. Однако в случае Google Chrome (после месячного изменения в календаре) returnValue не передается обратно showModalDialog, и d не определено.

Ответы на вопрос(2)

Ваш ответ на вопрос