2017-08-16 1 views
0

Kürzlich habe ich ein Problem mit der Übergabe von Parametern aus der Sicht auf den Controller mit Select-Tag aufgetreten. Hier ist der Code:Rails Select Tag - Übergabe eines Arguments an Controller

/app/views/admins/heimdall.html.erb

<%= select_tag 'users',options_from_collection_for_select(User.where(id: @users.ids), "id", "email", params[:users].blank? ? current_user.id : params[:users]), :onchange => "this.form.submit();", class: 'form-control pull-right' %> 

Was ich will, ist die ID des gewählten Benutzers auf das Hash-params übergeben, um die Seite neu zu laden noch einmal, diesmal mit den gewählten Benutzerdaten.

In Konsole ich diesen Fehler habe:

heimdall: 280 Uncaught Typeerror: Lesen Eigenschaft 'Senden' von null

Ich kann nicht sehr glücklich sein, wenn u mir helfen.

Antwort

2

Bitte stellen Sie sicher, select_tag innerhalb form_tag oder form_for Ansicht Helfer hinzugefügt.

enter image description here

+1

Danke, ja Formular-Tag benötigt wurde, Problem gelöst. – Borbat

1

Das Problem ist, dass this.form ist undefined, weil die js code in Dokumentkontext ausgeführt wird, die nicht form Eigenschaft hat.

können Sie das Formular von jquery Selektor $("form").submit() oder vielleicht $("#email").parent("form").submit() verwenden, wenn Sie mehrere Formulare und wollen mit dem email Feld das Formular abzuschicken.

Verwandte Themen