2010-08-12 1 views
0

Я использую ASP.NET MVC 2 и SimpleModal с IFRAMESimpleModal и MVC, называя страницу дважды при открытии в IFrame

он прекрасно работает, но мой контроллер вызывается дважды при открытии в IFRAME , когда я называю странице напрямую, контроллер вызывается только один раз

$.modal('<iframe id="frmDetails" src="' + src + '" >', { containerCss: { height: "90%", width: "90%"} }); 

есть вариант, который мне не хватает, это очень простой звонок.

Благодаря

+0

Похож на дублированный вопрос .... [при использовании SimpleModal и открытии iframe он вызывает src дважды] (http://stackoverflow.com/questions/4330774/when-using-simplemodal-and-open- ан-IFrame-это-это-вызова--Src-два раза). –

ответ

0

Попробуйте

$.modal('<iframe id="frmDetails" src="' + src + '" ></iframe>', { 
    containerCss: { height: "90%", width: "90%"}, 
    appendTo: 'form' 
}); 
1

Проверьте, чтобы убедиться, что вы не имеете в JQuery файл или расслоение плотной других файлов JavaScript включен более чем один раз.

1

У меня такая же проблема. Когда верхняя страница (которая содержит iframe) и страница, загруженная в iframe, загружает jquery, она загружает iframe дважды. Если вы удалите jquery с верхней страницы, он загружается только один раз.

Обходной путь, которого у меня нет на данный момент.

0

Я предлагаю, чтобы в вашем случае, когда вы вызываете $ .model, он создает некоторый (например div) скрытый элемент, где хранится html вашего модального окна. В этом пункте iframe загружает 1-й тайм в скрытом элементе. Затем он показывает пользователю - создает новый не скрытый элемент с новым iframe, поэтому вы получите второй вызов. Возможно, вы должны определить src iframe только тогда, когда он отображается пользователю. Поэтому, если я прав, у вас будет 2 iframes. Выберите правильный селектор для вашего iframe, который не скрыт.