2008-08-30 5 views
2

Ich habe ein Popup-Fenster mit einem Formular, das Daten für einen Bericht sammelt. Wenn ich in diesem Fenster auf "Senden" klicke, möchte ich, dass das Popup geschlossen und der Bericht im ursprünglichen Fenster geöffnet wird, das das Popup aufgerufen hat.Wie schließe ich ein Popup-Fenster und öffne die nächste Seite im Hauptfenster in ROR?

Ich glaube, ich den Bericht in den richtigen Fenstern

{ :target => <name of window> } 

im form_tag unter Verwendung öffnen kann, aber ich weiß nicht, wie zu bestimmen oder den Namen des Ursprungsfensters festgelegt.

Ich weiß auch nicht, wie Sie das Popup-Fenster schließen.

Antwort

0

Wie ist this für Starter?

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

Das Popup-Fenster kann mit dem HTML-Ereignisse onClick wie folgt geschlossen:

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

:target => fügt den Link, um das HTML-Attribut target. Dies öffnet ein neues Fenster und benennt das neue Fenster als Ziel.

Sie haben Javascript oder Ajax verwenden, um die alte Seite zu umleiten,

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

und dann das alte Fenster zu schließen.

window.close(); 

Dies kann entweder über die rjs-Datei oder direkt im Javascript erfolgen.

0

Versuchen Sie folgendes:

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

Es wird das aktuelle Fenster geschlossen und Sie auf die nächste Seite im Fenster Eltern bringen.

Verwandte Themen