入力フォームチェックをj queryでやってみた

12
フフフフフフフフフフフ JQuery フフフフフフ フフフフ

Upload: yusuke-ueki

Post on 08-Jan-2017

62 views

Category:

Career


0 download

TRANSCRIPT

Page 1: 入力フォームチェックをJ queryでやってみた

フォーム入力チェックをJQueryでやってみた

植木祐介

Page 2: 入力フォームチェックをJ queryでやってみた

2

★ 自己紹介

・仕事 秋葉原で分析寄りのエンジニア マーケティングの商圏分析

・使っているもの  Python, Ruby, GIS, R( 予定 )

・好きなもの 柑橘類全般

・ Rails 歴  3 か月

図 1. お店の位置をプロットした図

図 2. ちょっと加工して熱いエリアを可視化

Page 3: 入力フォームチェックをJ queryでやってみた

3

★ 今回やったこと  => 入力チェック機能を JQuery で実装 

※ソースコード保管場所https://github.com/rokusyou/formcheck開発環境 :windows7,ruby2.1.9

Page 4: 入力フォームチェックをJ queryでやってみた

4

★ View の記述 

フィールド入力

ラジオボタン

チェックボックス(複数 )

チェックボックス(単体 )

*ここだけべた書き

Page 5: 入力フォームチェックをJ queryでやってみた

5

★ 入力チェック(バリデーション )

・フォームなどでユーザーからの入力値を DB に保存する前に、その値を検証する仕組み。

・基本的にはサーバ側のモデル層で行うらしい。

・今回は Jquery を使ってクライアント側でバリデーション実行

クライアント サーバー

Jqueryを使ってクライアント側で実行!!

Page 6: 入力フォームチェックをJ queryでやってみた

6

★ JQuery で実行するメリット・デメリット

・メリット View だけの修正で実装ができる。(コントローラ、モデルから独立して実装できる)

・デメリットクライアント側の設定次第で動作が変わる( 例: クライアント側で Javascript が無効化されていると、動かない。)

Jquery( クライアント側 ) で軽くチェックして、モデル ( サーバ側 ) でガッツリチェックするのが王道!!

( 担当した案件が管理された環境化で実行されるアプリだったのでJquery だけでも問題は発生しなかった )

Page 7: 入力フォームチェックをJ queryでやってみた

7

★ Jquery の設定

1. プラグインの導入jquery-ui.min.jsJquery.validate.js

2. チェックロジックの作成ファイル「 val.js 」を作成し、フォルダ「 asset/javascript 直下」に配置

「 val.js 」では① 入力規則② 注意文③ 注意文の表示場所これらを指定している

Page 8: 入力フォームチェックをJ queryでやってみた

8

★ val.js の中身1. 入力規則

入力必須

要数値入力

最低一つチェック#interest10がチェックされていたら入力必須

Page 9: 入力フォームチェックをJ queryでやってみた

9

★ val.js の中身2. 注意文

3. 注意文の表示場所

※正規表現の扱いに注意する( Jqueryが勝手に正規表現に解釈するらしい。)

Page 10: 入力フォームチェックをJ queryでやってみた

10

★ Turbolinks を止める

Rails4 からデフォルトになった turbolinks ではJquery.read や window.onload イベントが発生しない !!=> よって止めることに。

・手順 ①gemfile から 「 gem ‘turbolinks’ 」を削除 ②app/assets/javascripts/application.html.erb から 「 //= requre turbolinks 」を削除

これでうまくいくはず!!

Page 11: 入力フォームチェックをJ queryでやってみた

11

★ 今回はここまで

・つぎは? ① Heroku に上げたい。  チャレンジしてみたが、  フォームがうまく動いてくれなかった。

 ②モデル層でフォームチェックをやってみる  

Page 12: 入力フォームチェックをJ queryでやってみた

12

おしまい!!