Meine Frage ist einfach:
<%= f.submit %>
Wohin geht die Klassendeklaration? Ich erhalte Fehler bei mehreren Versuchen.
ruby-on-rails
css
ruby-on-rails-3
sscirrus
quelle
quelle
Antworten:
Das sollte reichen. Wenn Sie eine Fehlermeldung erhalten, geben Sie möglicherweise den Namen nicht an.
Alternativ können Sie die Schaltfläche auch ohne Klasse formatieren:
Versuchen Sie das auch.
quelle
disable_with
diese Senden-Schaltflächen zu verwenden, aber sie scheinen nie zu funktionieren. Gibt es einen Grund, warum Sie das wissen? +1submit
müssen, um den Hash der Klasse: wie in der obigen Antwort zu verwenden. Wenn Sie diese Zeichenfolge nicht haben, wird eine Fehlermeldung angezeigt.<%= form.submit :class => 'class_name' %>
funktioniert, wenn Sie keinen Namen verwenden möchten.Sie können der Senden-Schaltfläche eines Formulars eine Klassendeklaration hinzufügen, indem Sie folgende Schritte ausführen:
<%= f.submit class: 'btn btn-default' %>
<- Hinweis: Es gibt kein Komma!Wenn Sie einen _ form.html.erb- Teil eines Gerüsts ändern und die dynamische Änderung des Schaltflächennamens zwischen Controller-Aktionen beibehalten möchten, geben Sie KEINEN Namen an
'name'
.Ohne Angabe eines Namens und abhängig von der Aktion, mit der das Formular gerendert wird, erhält die Schaltfläche die
.class = "btn btn-default"
(Bootstrap-Klasse) (oder was auch immer.class
Sie angeben) mit den folgenden Namen:Modellname aktualisieren
Modellname erstellen
(wobei Modellname der Name des Gerüstmodells ist)
quelle
Schienen 4 und Bootstrap 3 "primäre" Taste
Ergibt so etwas wie:
quelle
nil
des Namens das Standardverhalten des Helfers beibehält. Wenn er eine Instanzvariable für das zu@person
erstellende / anzuzeigende Objekt findet, z. B. die Schaltfläche entsprechendform_for
benennt (Update Foo oder Create Foo) und auch den FormBuilder wählt die richtige Aktion. Auf diese Weise können Sie den Formularcode in einen Teil extrahieren und damit das Modellobjekt anzeigen (wenn Sie ein Formular zum Anzeigen verwenden möchten), aktualisieren und auch eine neue Instanz erstellen.Wie Srdjan Pejic sagt, können Sie verwenden
oder die neue Syntax, die wäre:
quelle
Lösung Bei Verwendung von form_with helper
Für diejenigen, die verwenden Rails 5.2 mit dem
form_with
Helfer verwenden: Fügen Sie kein Komma hinzu !HTH!
quelle
Standardmäßig verwendet Rails 4 das Attribut 'value', um den sichtbaren Schaltflächentext zu steuern, damit das von mir verwendete Markup sauber bleibt
quelle
beide arbeiten
<%= f.submit class: "btn btn-primary" %>
und<%= f.submit "Name of Button", class: "btn btn-primary "%>
quelle