2017-05-03 17 views
1

基本的には、javascriptファイルを含むページがあります。 jsファイル には、関数a()と関数b()という2つの関数があります。 Inside関数 "A"私は読み込まれるポップアップを呼び出しました。子ポップアップがロードされた後、私はajax呼び出しを行うinteractiveという関数を持っています。結果が真であれば、私は子ページを閉じてメインページの関数 "B"を呼び出す必要があります。サンプルコードは下のとおりです。問題は、子ページの関数 "B"を参照できず、メインページを呼び出すことができないことです。子ページを閉じた後にメインページを更新

function a() { 
    var strWindowFeatures = "location=yes,scrollbars=yes,status=yes"; 
    var URL = path of the url 
    var win = window.open(URL, "_blank", strWindowFeatures); 
} 

function b() { 
    calling a 
    function to relaod the page. // 
} 


function InterActive(encodeText) { 

    url: url 
    cache: false, 
    async: false, 
    type: 'GET', 
    contentType: 'application/json; charset=utf-8', 
    data: {}, 
    dataType: 'json', 
    success: function (data) { 
     if (data === true) { 
      alert('record updated'); 
      window.close(); 
      // i need to call the function b() in the child page.. 

     } 
    }, 
    error: function (jqXHR, textStatus, errorThrown) { 
     alert(jqXHR); 
     alert(textStatus); 
     alert(errorThrown); 
    } 
}); 
+0

新しいウィンドウを開きますか? –

+0

はい。子ウィンドウでポップアップを閉じる前に私はメインウィンドウの関数を呼び出す必要があります –

+0

リロード機能を呼び出す子ウィンドウの 'onbeforeunload'イベントハンドラを追加します – Icepickle

答えて

0

あなたが開くウィンドウは親ウィンドウであなたのリロード機能を呼び出すonbeforeunloadイベントを受信するような方法でそれを行うことができます。

の例では、jsfiddle here上でテストすることができ、次の

function reloader() { 
    if (!reloader.id) { 
    reloader.id = 0; 
    } 
    document.querySelector('#reloadCount').innerHTML = ++reloader.id; 
} 

function openWindow() { 
    var win = window.open('about:blank', 'blank', 'width=640,height=480'); 
    win.document.write('<html><head><body><h1>Reloads on close</h1></body></html>'); 
    win.addEventListener('beforeunload', function() { 
    reloader(); 
    return true; 
    }); 
} 

だろう(window.openはstacksnippetsで許可されていません)

+0

メインウィンドウの機能が呼び出されていない –

+0

addEventListenerはIEでエラーが発生しています –

+0

@jaiganesh IE、Chrome、Firefox、Internet Explorerで私のために具体的にできますか?IEでは確認ダイアログが表示されます再ロードされた部分を更新します) – Icepickle

-1

私はあなたが関数bを(追加する必要があると思う)の子供でページに簡単にアクセスできるので、これで確認してください。

+0

これはOPにどのように役立ちますか? – Icepickle

関連する問題