jquery.validation.js で正規表現バリデーション

Rails の層を薄く、薄く、薄くしたいので*1、サーバーサイドにバリデーション機能を持たせつつも、jquery.validation.js を採用。

それはともかく、jquery.validation.js で

<input type ... minlength="2"></input>

とかできるのに、

<input type ... regex="[a-z]{1,5}"></input>

とかできない?ちゃんとソースまで読んでいないので、adhocに以下で対応

<%= text_field 'account', 'login_name', :class => "required login_name" %>
<script type="text/javascript">
  $(document).ready(function(){
  jQuery.validator.addMethod("login_name", function(value){
    return /^[a-z][a-z0-9_]{1,15}$/i.test(value);
  }, "Invalid format(starts with [a-z] and 2-15 of [a-z], digits or '_'.");
  });
</script>

*1:CouchDB プロジェクトでは javascript によるドキュメントバリデーションの機能を現在進行形で実装しているので、それが完了すれば、Rails イラネ!、と大手を振っていうことができます(笑。