BackEnd

form_withでフォームの送信前に処理を行う方法

投稿日:2018年4月12日 更新日:

はじめに

フォームを送信する前に処理を行いたいケース(Google Analyticsのイベントのトラッキングなど)があると思います。

今回はform_withを利用してAjax送信する前に何らかの処理を行うサンプルを紹介します。

form_with

form_withはRails5.1から追加されたフォームを作成するためのヘルパーです。

form_withを扱う上で注意すべき点はデフォルトでAjax送信になるということです。送信時にページ遷移したい場合は local: true を指定する必要があります。

サンプル

最小限のサンプルコードを下記に記載します。

submit(); ではAjaxにならずページ遷移してしまうので、 Rails.fire(); を使う点に注意が必要です。

さいごに

form_withでフォームを送信する前に任意の処理を行うサンプルを紹介しました。

参考

rails-ujs と form_with の使い方

[Rails 5.1] ‘form_with’ APIドキュメント完全翻訳

blog-page_footer_336




blog-page_footer_336




-BackEnd
-

執筆者:


comment

メールアドレスが公開されることはありません。

CAPTCHA


関連記事

js

GoogleAppsScriptを使ってmBaaSの定期実行処理を実装する

1 はじめに1.1 簡単な状況説明1.2 定期実行を行う方法2 実装2.1 実装の流れ2.2 JavaScriptの実装2.3 スクリプトをアップロードする2.4 Google Apps Script ...

laravel logo

Deployerで複数の環境やサーバにデプロイするには

1 はじめに2 hosts.ymlファイルの作成3 プロダクション・ステージング環境を分ける3.1 ymlファイルの記載3.2 デプロイコマンド4 複数台のサーバに同時リリースする4.1 ymlファイ ...

laravel logo

[Laravel] ログの扱い方 [5.8]

1 はじめに2 環境3 Monologについて4 コード上で設定する方法5 config/logging.phpで設定する方法6 おまけ:ログレベルについて7 さいごに8 おすすめ書籍 はじめに こん ...

php logo

PHP入門 〜文字列と数値の操作〜

1 はじめに2 基本ルール2.1 開始と終了のタグ2.2 ホワイトスペース2.3 大文字と小文字の区別2.4 コメント2.5 変数の定義3 文字列の操作3.1 文字列の定義3.2 無駄なスペースを削除 ...

rails

deviseを使ってユーザ登録フォームを作る

1 はじめに1.1 前提条件2 deviseについて2.1 deviseとは2.2 deviseでできること3 登録処理の実装3.1 Gemのインストール3.2 deviseのインストール3.3 デフ ...

フォロー

blog-page_side_responsive

2018年4月
1234567
891011121314
15161718192021
22232425262728
2930  

アプリ情報

私たちは無料アプリもリリースしています、ぜひご覧ください。 下記のアイコンから無料でダウンロードできます。