ホーム DoRuby 【LiveValidation】ブラウザ上でバリデーションを行う【RAILS/JS】

【LiveValidation】ブラウザ上でバリデーションを行う【RAILS/JS】

この記事はアピリッツの技術ブログ「DoRuby」から移行した記事です。情報が古い可能性がありますのでご注意ください。

LiveValidation.jsを使用するとブラウザ上でバリデーションを行えます。

 動作環境

Ruby 1.8.7,1.9.3

Rails 2.3.15

prototype.jsがある

 1.「LiveValidation.js」をダウンロード

ここからダウンロードできます

 2.ダウンロードしたものをRailsのpublicディレクトリに配置(prototype.jsと同じ階層)

 3.Viewで使ってみる

JSを読み込み、テキストフィールド等のIDに対するscriptを書くだけ

	~~~~~~~~~~~
	~~~~~~~~~~~
	<%= javascript_include_tag "livevalidation_prototype" %>
	~~~~~~~~~~~
	~~~~~~~~~~~
	
	<%= :text_field, :product, :name, :id => '/product_name'/ %> 
	この下に↓を追加
	<script type="text/javascript">
	        var product_name = new LiveValidation('product_name', { validMessage: 'OKです', wait: 500 });
	        product_name.add(Validate.Presence, {failureMessage: "未入力です"});
	        //product_name.add(Validate.Length, { minimum: 3, maximum: 255,
	tooLowMessage: '3文字以上で', tooHighMessage: '255文字以下で' });
	        //product_name.add(Validate.Numericality, { minimum: 3, maximum: 255,
	tooLowMessage: '数字は3から', tooHighMessage: '数字は255まで' });
	        //product_name.add(Validate.Format, {pattern: /^会社名$/i, 
	failureMessage: "'会社名'と入力してください" } );
	</script>
	
	

Rails3系だとProduct.validatorsでバリデーションの設定がとれるのでペルパーとかを作成してもっとスマートにできそうです。

記事を共有

最近人気な記事