2016-10-17 21 views
1

子ウィンドウを開く親ウィンドウからのリンクがあります。子ウィンドウの保存ボタンをクリックすると、私はstrutsアクションを呼び出し、子ウィンドウを閉じたいと思います。親ウィンドウをリロードします。子ウィンドウからアクションを呼び出し、子ウィンドウを閉じて親ページをリロードする

function closeChildWindow(){ 
document.forms[0].action="/rms/action/linkSourceList"; 
document.forms[0].submit(); 
var originalSource = document.getElementById("originalSource").value; 
opener.location.href = '../action/editSource?source_id='+originalSource; 
} 

私は子ウィンドウで上記のコードを使用しました。このコードは、親ウィンドウをリロードしますが、子ウィンドウからアクションを呼び出すことはありません。誰も私に解決策を提案することはできますか?事前に感謝... :)

答えて

1

いくつかのJavaScriptライブラリを使用した方が簡単でしょう。

私はjQueryの例を与える:

function submitAndCloseChildWindow(){ 
    var data = /* get form data here */; 
    $.ajax({ 
     url: "/rms/action/linkSourceList", 
     data: data, 
     method: "POST" 
    }).done(function() { 
     opener.location.href = '../action/editSource?source_id=' + $("#originalSource").val(); 
     window.close(); 
    }); 
} 

これが失敗した場合に開いているあなたの窓を維持し、あなたがどんな期待エラーを処理することができます。依然としてリクエストが通過しない場合は、コンソールに問い合わせてください。

関連する問題