Wie bekommt man die Ruby on Rails generierte id eines form-Elements als Referenz in JavaScript?

Bei der Verwendung der form_for Helfer und ein text_field nennen, Ruby on Rails generiert eine eindeutige id für die <input /> element, das es gibt. Wie kann ich die erzeugen die gleiche id für die spätere Eingliederung in JavaScript erzeugt später?

<%= form_for @user do |f| %>
  <%= f.text_field :username %>
<% end %>

Dann später in die Seite:

<%= javascript_tag do %>
  $('<%= id of the :username field %>').doSomethingReallyCool();
<% end %>
  • Ich möchte darauf hinweisen, dass die zusätzliche Beispiel in die bounty ist nur ein weiterer besonderer Fall, wo die Antwort nützlich sein wird. Es ist nicht eine andere Frage. Akzeptabel die Antwort sollte genug sein, für Allgemeine Zwecke zu passen sowohl die original-Beispiel und mir. Die beiden Beispiele zeigt einen Fall, wo es nötig ist, um "Ruby on Rails generierte id eines form-Elements als Referenz in JavaScript".
  • Meta-Frage nach der aktuellen bounty meta.stackoverflow.com/q/351561/73226
  • Nein, das ist nicht OK. Beachten Sie, dass der text von Ihr Kopfgeld ist nicht mehr sichtbar, nachdem die bounty ist abgelaufen oder vergeben. Eine Antwort, die Adressen der Frage in Ihrem bounty machen sehr wenig Sinn, nachdem die bounty ist verschwunden. Bitte stellen Sie eine neue Frage.
  • Ich denke, Sie machen Bemerkungen, ohne zu verstehen, dass die beiden Beispiele sind zwei Besondere Fälle des gleichen Allgemeinen Fall. Der Autor gibt nur EIN Beispiel von "Ruby on Rails generierte id eines form-element" und ich gebe ein weiteres Beispiel. Beispiel A und Beispiel B. Aber die Frage ist "Wie bekommt man die Ruby on Rails generierte id eines form-Elements als Referenz in JavaScript?" und es ist noch immer fehlt eine anständige Antwort. Derzeit akzeptierte Antwort ("erstellen ein benutzerdefiniertes Formular-generator") gilt als schlechte Praxis heutzutage.
  • Ist nicht das id-Namen-von-Modellname-von-der-Attribut? Und nicht Sie es nicht geben, eine id meine Angabe im html-Optionen?
Schreibe einen Kommentar