2008-08-30 17 views
2

私は、レポートのデータを収集するフォームを含むポップアップウィンドウを持っています。 そのウィンドウでsubmitをクリックすると、ポップアップを閉じてポップアップを呼び出した元のウィンドウでレポートを開きます。ポップアップウィンドウを閉じ、RORのメインウィンドウで次のページを開くにはどうすればよいですか?

私はform_tag

{ :target => <name of window> } 

を使用することによって、正しいウィンドウでレポートを開くことができると思いますが、私は元のウィンドウの名前を決定または設定する方法がわかりません。

また、ポップアップウィンドウを閉じる方法もわかりません。

答えて

0

thisはどのようにスターターになりますか?

# The submit button in your child window's view: 
<%= button_to_function 'Save', "$('my_form').submit(); window.opener.location.reload(); window.close();" %> 
0

次のようにポップアップウィンドウがのonClick HTMLイベントを使用して閉じることができます。

<%= submit_tag "Go!", {:onClick => "window.close()"} %> 
2

:target =>はリンクにHTML属性ターゲットを追加します。これにより、新しいウィンドウが開き、新しいウィンドウの名前がターゲットになります。

あなたは、古いページをリダイレクトするために、JavaScriptやAjaxの使用を

window.opener.location.href="http://new_url"; 

し、古いウィンドウを閉じる必要があります。

window.close(); 

これは、rjsファイルまたはjavascriptで直接行うことができます。

0

これを試してみてください:

function fclosepopup(){ 
window.opener.location.replace="URL"; 
window.close(); 
} 

それは親ウィンドウに次のページに現在のウィンドウを閉じて、あなたをもたらすでしょう。