I''m trying to apply an Effect.Highlight only to elements of a Form that was submitted. So if a user updated 2 fields of a 10 field form, the Effect.Highlight would be applied to the 2 fields... showing the user what was updated. My first attempt was to use the :complete=>"eval(request.responseText)" ... however, the template that get''s rendered won''t know what elements to apply the Effect too. My second attempt was to use a Javascript call, like the following... but don''t know the correct syntax to use to pull the elements modified from the Form: <% content_for("page_scripts") do -%> function field_edited() { var field = $(''field''); // how do i figure out what was edited from the Form params ? new Effect.Highlight(field); } Any insight into this would be great, as I''ve been stumbling over this for quite some time now. Thanks ! =Dylan -------------- next part -------------- An HTML attachment was scrubbed... URL: http://wrath.rubyonrails.org/pipermail/rails/attachments/20060112/b547ccd9/attachment.html
I think this is a doubly loaded question. Not clear how/when you''ll show the highlighted elements. But here is my take on it. 1) Try to deal with the form diff in the ajax call. You know what the form was and now what the form is. So you can diff out the user changes and return the form attributes that have changed. 2) Use an rjs template on the way back and highlight the updated fields based on you diff. Hope this helps... -- Posted via http://www.ruby-forum.com/.
Thanks derailed... 1) You mean within the action called by Ajax (ie: a form_remote_tag) ? On updates for example, I''m just doing an "update_attributes" on the model... but I could diff out what has changed and what hasn''t... then pass that hash back to the view. At this point however, I''m not too sure how to tie in the JS... and, in the whole scheme of things, effect the exact elements that relate to these form fields (ie: div''s surrounding each form field ). 2) This requires edge, or a plugin, correct ? Thanks ! =Dylan On 1/12/06, derailed derailed <kitesurf27@gmail.com> wrote:> > I think this is a doubly loaded question. Not clear how/when you''ll show > the highlighted elements. But here is my take on it. > > 1) Try to deal with the form diff in the ajax call. You know what the > form was and now what the form is. So you can diff out the user changes > and return the form attributes that have changed. > > 2) Use an rjs template on the way back and highlight the updated fields > based on you diff. > > Hope this helps... > > -- > Posted via http://www.ruby-forum.com/. > _______________________________________________ > Rails mailing list > Rails@lists.rubyonrails.org > http://lists.rubyonrails.org/mailman/listinfo/rails >-------------- next part -------------- An HTML attachment was scrubbed... URL: http://wrath.rubyonrails.org/pipermail/rails/attachments/20060112/d2c554dd/attachment.html
Dylan, Take a look at the rjs plugin. You don''t need to run to the edge... You can find all the info you need here: http://www.codyfauser.com/articles/2005/12/02/rails-rjs-templates-plugin Good luck !! -- Posted via http://www.ruby-forum.com/.
>From a controller action, after a form submit, is there a way to pass somedata to the template (or RJS template if you''re using them) that is going to be rendered ? For example, passing the template some information as to what elements to effect. On 1/12/06, De Railed <fernand@dim.com> wrote:> > Dylan, > > Take a look at the rjs plugin. You don''t need to run to the edge... > You can find all the info you need here: > > http://www.codyfauser.com/articles/2005/12/02/rails-rjs-templates-plugin > > Good luck !! > > -- > Posted via http://www.ruby-forum.com/. > _______________________________________________ > Rails mailing list > Rails@lists.rubyonrails.org > http://lists.rubyonrails.org/mailman/listinfo/rails >-------------- next part -------------- An HTML attachment was scrubbed... URL: http://wrath.rubyonrails.org/pipermail/rails/attachments/20060116/57e5ecd4/attachment.html
If anybody was interested, I found this post which pretty much solves my problem. Not sure if this is the best approach... but it works ! http://www.cube6media.com/weblog/entry/2005/11/24/rails-ajax-form-error-handling On 1/15/06, Dylan Stamat <dylans@gmail.com> wrote:> > From a controller action, after a form submit, is there a way to pass some > data to the template (or RJS template if you''re using them) that is going to > be rendered ? > > For example, passing the template some information as to what elements to > effect. > > > > On 1/12/06, De Railed <fernand@dim.com > wrote: > > > > Dylan, > > > > Take a look at the rjs plugin. You don''t need to run to the edge... > > You can find all the info you need here: > > > > http://www.codyfauser.com/articles/2005/12/02/rails-rjs-templates-plugin > > > > Good luck !! > > > > -- > > Posted via http://www.ruby-forum.com/. > > _______________________________________________ > > Rails mailing list > > Rails@lists.rubyonrails.org > > http://lists.rubyonrails.org/mailman/listinfo/rails > > > >-------------- next part -------------- An HTML attachment was scrubbed... URL: http://wrath.rubyonrails.org/pipermail/rails/attachments/20060116/1d9f1504/attachment.html