У меня есть iframe в моей основной странице. В iframe странице существует modalpopup. Таким образом, когда modalpopup показывают, родитель modalpopup является iframe телом и основной вышестоящей инстанцией страницы. Таким образом наложение только покрывает iframe а не всю страницу.
Я пытался переместить modalpopup от iframe до родительского элемента тела окон (или любого другого элемента в родительском теле) использование jQuery. Я получаю ошибку недействительного аргумента.
Как я показываю modalpopup от страницы внутри iframe, и это должно покрыть весь документ, родительский документ также?
Обновление:
Так как немного пользователей интересуются достижением того же поведения.. вот обходное решение
Лучшее обходное решение, которое я предложил бы, должно будет иметь modalpopup на основной странице.. и затем вызовите его от iframe.. скажите что-то вроде этого..
/* function in the main(parent) page */
var _onMyModalPopupHide = null;
function pageLoad(){
// would be called by ScriptManager when page loads
// add the callback that will be called when the modalpopup is closed
$find('MyModalPopupBehaviorID').add_hidden(onMyModalPopupHide);
}
// will be invoked from the iframe to show the popup
function ShowMyModalPopup(callback) {
_onMyModalPopupHide = callback;
$find('MyModalPopupBehaviorID').show();
}
/* this function would be called when the modal popup is closed */
function onMyModalPopupHide(){
if (typeof(_onMyModalPopupHide) === "function") {
// fire the callback function
_onMyModalPopupHide.call(this);
}
}
/* functions in the page loaded in the iframe */
function ShowPopup(){
if(typeof(window.parent.ShowMyModalPopup) === "function") {
window.parent.ShowMyModalPopup.apply(this, [OnPopupClosed]);
}
}
// will be invoked from the parent page .. after the popup is closed
function OnPopupClosed(){
// do something after the modal popup is closed
}
Надежда это помогает