[RUBY] Initialisieren Sie alle Werte im Formular [Rails] mit einem einzigen Klick (Definition der Hilfsmethode + JavaScript).

Nachtrag (2020/06/10)

Mit der Methode in diesem Artikel können Sie nur die Formularinitialisierung (Zurücksetzen) ausführen. In diesem Artikel wird beschrieben, wie Sie es vollständig klarstellen (leer).

Notizen, die mit dem erweiterten Suchformular in [Rails] Ransack erstellt wurden

Einführung

Bei der Implementierung eines Suchformulars, mit dem Sie verschiedene Suchbedingungen hinzufügen können, habe ich mich gefragt, ob es eine Möglichkeit gibt, die Suchbedingungen mit einem einzigen Klick zurückzusetzen.

Infolgedessen konnte ich es mit der folgenden Methode implementieren, daher werde ich es zusammenfassen.

Umgebung

Verfahren

Um einen kurzen Überblick zu geben ** 1. Definieren Sie eine Methode zum Generieren eines Reset-Button-Tags in der Hilfsmethode ** ** 2. Nenne es in Sicht ** ** 3. Schreiben Sie einen Prozess, um das Kontrollkästchen mit js zu deaktivieren ** Ich habe das Gefühl, ich werde es mit drei senden

1. Definition der Hilfsmethode

Jede Datei reicht aus, aber dieses Mal definieren wir sie in "helpers / application.rb".

helpers/application.rb


module ApplicationHelper
  def reset_tag(value = "Reset form", options = {})
    options = options.stringify_keys
    tag :input, { type: "reset", value: value }.update(options)
  end
end

2. Rufen Sie die Ansichtsdatei auf

ruby:search.html.haml


%div
  = reset_tag 'klar', id: 'js_clear_btn'
%div
  = f.submit 'Erledigt'

Ursprünglich hat Rails kein "reset_tag", aber da es durch eine Hilfsmethode definiert wurde, kann es auf diese Weise aufgerufen werden.

Passen Sie mit CSS an und sehen Sie so aus ↓ スクリーンショット 2020-06-03 13.53.06.png

3. Eine Beschreibung, die das Kontrollkästchen mit JavaScript deaktiviert

In meinem Fall konnte ich das Kontrollkästchen mit der Reset-Schaltfläche nicht deaktivieren (deaktivieren), also habe ich dort JavaScript geschrieben.

Der Code ist sehr umweltabhängig, daher werde ich ihn weglassen.

Ergebnis

f923d6ccbb11ae2bb0c6d320371bc226.gif Auf diese Weise konnte ich eine Schaltfläche erstellen, die alle Textfelder, Zahlenfelder, Auswahlfelder und Kontrollkästchen initialisiert!

Referenz

Verwenden Sie die Schaltfläche, um das Formular in Rails zu initialisieren

Recommended Posts

Initialisieren Sie alle Werte im Formular [Rails] mit einem einzigen Klick (Definition der Hilfsmethode + JavaScript).
Argumente mit Standardwerten Nehmen Sie als Beispiel die Methode full_title des Rails-Lernprogramms
[Rails] entwickelt eine Hilfsmethode
Definition der Rubinmethode