Para validação de formulário do lado do cliente no ROR, você pode usar
Primeiro adicione estas linhas em seu GemFIle:
gem 'jquery-rails'
gem 'client_side_validations'
E depois
bundle install
Agora use o gerador
rails g client_side_validations:install
Você deve incluir arquivos rails.validations JavaScript.
<%= javascript_include_tag :defaults, "rails.validations" %>
descomente essas linhas de /config/initializers/client_side_validations.rb
# ClientSideValidations Initializer
require 'client_side_validations/simple_form' if defined?(::SimpleForm)
require 'client_side_validations/formtastic' if defined?(::Formtastic)
# Uncomment the following block if you want each input field to have the validation messages attached.
ActionView::Base.field_error_proc = Proc.new do |html_tag, instance|
unless html_tag =~ /^<label/
%{<div class="field_with_errors">#{html_tag}<label for="#{instance.send(:tag_id)}"
class="message">#{instance.error_message.first}</label> </div>}.html_safe
else
%{<div class="field_with_errors">#{html_tag}</div>}.html_safe
end
end
Agora tudo o que precisamos é adicionar : validate => true em tags de formulário