coffeescript + jQueryで文字カウンタ
Railsのための下準備
ページ遷移時にもjqueryが動くように、Gemfileに以下を追加
gem 'jquery-turbolinks'
また、application.js
に//= require jquery.turbolinks
を追加する。
順番に注意。
//= require jquery //= require jquery.turbolinks // // ... 他 ... // //= require turbo links
HTML(例)
<textarea class="content"><!--ここの文字数を--></textarea> <span class="count "><!--ここに表示 --></span>
coffeescript
$ -> $('.content').on('keyup keydown keypress change',-> thisValueLength = $(this).val().length limit = 140 if thisValueLength < limit $('.count').html(limit - thisValueLength).removeClass("text-danger") else $('.count').html(limit - thisValueLength).addClass("text-danger") ).keyup()
リンク
- jQueryで入力フォームに文字カウント(カウントダウン)を設置する方法 | BlackFlag
- 複数対応! jQueryでテキストエリアの文字数をカウントしてみる | Wataame Frog
- Rails 4のturbolinksについて最低でも知っておきたい事 | KRAY Inc
- 【Rails】Rails4.0 TurbolinksでjQueryを動作させる - Kntmrkm.new()
- CoffeeScript
- kossnocorp/jquery.turbolinks · GitHub
追記 2014/1/9
ページのロード時にも動作するように以下をコードの末尾に追加
.keyup()
参考