2010-08-18 105 views
0

我有一個asp.net頁面。我正在使用jQuery庫來打開鏈接點擊模式窗口。在這個模式窗口中,我正在加載另一個頁面。我在這個模式窗口內更新後,我需要發送一個回調到「父」頁面。如果我從這個窗口調用函數,我收到錯誤找不到函數。 Window.opener.functionname也不起作用。發送回電給其他頁面?

這裏是我的代碼

$(function() { 
      $('#ControlId').click(function (e) { 
       e.preventDefault(); 

       $.ModalWindow({ 
        bgColor: '#3333cc', 
        url: 'default.aspx' 
       }); 

       return false; 
      }); 

       return false; 
      }); 
     }); 

有什麼辦法如何發送一個回調的例子嗎?

+0

你用什麼插件ModalWindow? – 2010-08-18 18:09:07

回答

0

只要域相同,就可以調用父窗口中的任何JavaScript。

將在你的父頁一些JavaScript代碼:

function handleChild(){ 
    // put your callback code here 
    $.nyroModalRemove(); // if you want your child to remove the popup 
} 

將一些JavaScript這樣在你的子頁面的代碼(在一個彈出):

function callParent(){ 
    if ((window.parent) && (window.parent != window)) { 
     if (window.parent.handleChild) { 
      window.parent.handleChild(); 
     } 
    } 
} 

,並通過調用它一個按鈕<input type='button' onclick='callParent()'>click me to close</input>或通過你的頁面加載$(document).ready(function(){callParent();});

+0

嗨皮特感謝您的快速反應,你可以告訴我更詳細的代碼,我需要放置到子頁面的作品是如何?它的突出窗口,我不是如何引用父頁面。預先感謝您 – GEka 2010-08-18 18:21:19

+0

其nyromodel庫 – GEka 2010-08-18 18:36:07

+0

謝謝我可以通過這種方式調用父頁面,但我打開窗口後的JavaScript函數給我的迴應,我在下面的消息「目標不能發現或沒有emplement ICallbackEventHandler「 – GEka 2010-08-18 20:27:59