2016-07-14 14 views
4

Hallo ich auf Klick neuen Fenster öffnen möchten hier von Submit-Button mit Ruby on Rails, ist mein CodeÖffnen Sie in Schienen ein neues Fenster auf Klick einreichen

<div class="actions"> 
     <%= f.button :submit,:class => 'btn btn-md btn-success' do %> 
      <i class='fa fa fa-plus'></i> Create New Window 
     <% end %> 
</div> 

ich versucht habe: target => "_blank" in einreichen, aber es funktioniert nicht, mir bitte

+0

helfen, was Sie in einem neuen Fenster angezeigt werden soll .. ?? – Vishal

+0

Ich möchte zur Indexseite gehen, nachdem ich auf "Senden" geklickt habe. –

+0

möchten Sie nur ein neues Fenster für die Indexseite öffnen .. oder Sie möchten nach dem Senden der Formularseite zur Indexseite umleiten. – Vishal

Antwort

7

Verwenden Sie formtarget = "_ blank".

<%= form_for @my_obj do |f| 

<div class="actions"> 
    <%= f.button :submit,:class => 'btn btn-md btn-success', :formtarget => "_blank" do %> 
     <i class='fa fa fa-plus'></i> Create New Window 
    <% end %> 
</div> 

werden Sie diesen Link http://www.w3schools.com/tags/att_button_formtarget.asp

+0

Dieses s greate, das ist funktioniert –

+0

Bitte akzeptieren Sie diese Antwort, wenn es funktioniert, so dass andere Leute leicht finden die Lösung des gleichen Problems. Vielen Dank –

2

helfen Sie haben target="_blank" in Ihrem Formular

für ein Beispiel passieren

<form action="..." ... 
onsubmit="window.open('google.html', '_blank', 'scrollbars=no,menubar=no,height=600,width=800,resizable=yes,toolbar=no,status=no');return true;"> 

Versuchen Sie diese

+0

nein es funktioniert nicht, –

1

Haben Sie versucht, Ziel senden als _blank Parameter in form_for nicht in senden Schaltfläche.

<%= form_for @my_obj, html: { target: "_blank" } do |f| 

<div class="actions"> 
     <%= f.button :submit,:class => 'btn btn-md btn-success' do %> 
      <i class='fa fa fa-plus'></i> Create New Window 
     <% end %> 
</div> 
1

Wenn Sie das Fenster bedingt geöffnet werden sollen, in Abhängigkeit von erfolgreicher Einreichung des Formulars Sie vielleicht:

  • Set remote: true auf dem Formular
  • ein format.js { render :show, status: :ok } zu Ihrem Controller hinzufügen
  • hinzufügen eine show.js Datei, die window.open pro Antwort von Vishal
läuft

So können Sie mit AJAX-Formularen beginnen

Verwandte Themen