Edge Rails: observe_field

20 de janeiro de 2009  |  Rails 2.3  | 

O método observe_field tem a finalidade de observar um determinado campo de um formulário e executar uma chamada Ajax quando houver alguma alteração em seu valor.

Até hoje, este método possuía também a opção :on que permitia identificar qual evento deveria ser observado. No exemplo abaixo ele deveria disparar uma chamada Ajax assim que o campo book_title perdesse o foco (blur):

observe_field 'book_title',
  :url => 'http://example.com/books/edit/1',
  :on => 'blur'

Mas a funcionalidade que define a opção :on foi removida do Prototype (o framework utilizado pelo Rails para manipulação de JavaScript) há mais ou menos dois anos atrás. Ou seja, já faz dois anos que esta opção não funciona e foi ignorada, por isto ela foi removida definitivamente do Rails.


Todos os exemplos dados aqui funcionarão somente no Ruby on Rails 2.3/3.0 ou superior. Você pode encontrar mais detalhes sobre esta e outras novidades acompanhando a série Edge Rails.



2 Comentários


  1. Seria muito bom o dia que o Rails usasse Jquery como padrão ao invés de Prototype. Vamos ver se no Rails 3 vamos conseguir fazer isso por padrão mesmo, como já foi comentado.

  2. Já foi anunciado que no Rails 3 teremos uma forma mais simples de mudar para JQuery ou outros, mas acho que o padrão ainda vai ser o prototype já que ele é mantido pela equipe do Rails.

    Mas até ai tudo bem.

Deixe um comentário