i''ve just installed the RJS plugin per cody''s instructiuons and read through tutorials. I''ve made the necessary changes to my existing code and everything appears to be working, except that the returned javascript is not being evaluated... here''s my setup: i have a checkbox with an onclick event pointing to a javascript function. this javascript function does a few things then sends a request. I have the onSuccess callback pointing to another function who''s only purpose is to eval(resp.responseText). but this is not happening. i added an alert( resp.responseText) and the javascript code is there, it''s just not being evaluated. checkbox: <div id="cb_div"> <input type="checkbox" name="active_flag_<%= user.id -%>" value="<%user.id-%>" <%user.active? ? "checked" : "" -%> onclick="activate_user(this)"/> </div> javascript: function activate_user(cb) { var status = (cb.checked) ? "1" : "0" var data = "id" + cb.value + "&af=" + status var myReq = new Ajax.Request( ''/admin/users/activate'', { :method: ''post'', parameters: data, onSuccess: success_handler, ...) } function success_handler(resp) { alert(resp.responseText); eval(resp.responseText); } rjs template: page.visual_effect :highlight, "cb_div", { :start_color => "#aaffaa" } the success_handler is getting called, as the alert shows the javascript being returned as: new Effect.Hilight(''cb_div'', {startcolor:#aaffaa}); but as i said, it''s not getting evaluated in the eval() call. (i''m not seeing the effect) anyone have any ideas? Chris -------------- next part -------------- An HTML attachment was scrubbed... URL: http://wrath.rubyonrails.org/pipermail/rails/attachments/20060314/218f5567/attachment.html
Chris, There are a few problems here.> page.visual_effect :highlight, "cb_div", { :start_color => "#aaffaa" }The option is actually :startcolor and it looks like you''ll need extra quotes on the hex value, like "''#aaffaa''" because the scriptaculous_helper doesn''t correctly place the :startcolor option within quotes.> the success_handler is getting called, as the alert shows the javascript > being returned as: > > new Effect.Hilight(''cb_div'', {startcolor:#aaffaa});Is this a typo or did you incorrectly spell Highlight here? With the double quoting this will become: new Effect.Highlight(''cb_div'', {startcolor:''#aaffaa''}); I tried this out in a quick test and without the extra quotes the effect wasn''t applied. I got a nice green highlight with the extra quotes.> but as i said, it''s not getting evaluated in the eval() call. (i''m not > seeing the effect)You shouldn''t actually have to eval this yourself. Prototype will eval the response automatically because RJS sets the Content-Type header to text/javascript. Hope this helps.> anyone have any ideas? > > Chris > > _______________________________________________ > Rails mailing list > Rails@lists.rubyonrails.org > http://lists.rubyonrails.org/mailman/listinfo/rails > > >-- Cody Fauser http://www.codyfauser.com
Cody, thanks so much for the assist. the missing quotes was the issue. and thanks for the plugin! Chris On 3/15/06, Cody Fauser <codyfauser@gmail.com> wrote:> > Chris, > > There are a few problems here. > > > page.visual_effect :highlight, "cb_div", { :start_color => "#aaffaa" } > > The option is actually :startcolor and it looks like you''ll need extra > quotes on the hex value, like "''#aaffaa''" because the > scriptaculous_helper doesn''t correctly place the :startcolor option > within quotes. > > > the success_handler is getting called, as the alert shows the javascript > > being returned as: > > > > new Effect.Hilight(''cb_div'', {startcolor:#aaffaa}); > Is this a typo or did you incorrectly spell Highlight here? > > With the double quoting this will become: > new Effect.Highlight(''cb_div'', {startcolor:''#aaffaa''}); > > I tried this out in a quick test and without the extra quotes the > effect wasn''t applied. I got a nice green highlight with the extra > quotes. > > > but as i said, it''s not getting evaluated in the eval() call. (i''m not > > seeing the effect) > > You shouldn''t actually have to eval this yourself. Prototype will > eval the response automatically because RJS sets the Content-Type > header to text/javascript. > > Hope this helps. > > > anyone have any ideas? > > > > Chris > > > > _______________________________________________ > > Rails mailing list > > Rails@lists.rubyonrails.org > > http://lists.rubyonrails.org/mailman/listinfo/rails > > > > > > > > > -- > Cody Fauser > http://www.codyfauser.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/20060315/1545b4ed/attachment.html