I tries to observe a change in a field with jquery in Rails 3.1 in
order to be able to implement two cascading select boxes.
A a first step I just try to observe a click in a div using jquery
I have the following function in a .js file that is loadedin the head
section (fieldset is the id of a div) and is displaying a view with
the div fieldset
$(document).ready(function() {
$(''#fieldset'').bind({
click: function() {
alert(''Change'');
// do something on click
},
mouseenter: function() {
// do something on mouseenter
};
});
});
But nothing happens when I click in the field
I suspect that I am using jquery in the wrong way
I would appriciate any advice !
Hans
--
You received this message because you are subscribed to the Google Groups
"Ruby on Rails: Talk" group.
To post to this group, send email to
rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
To unsubscribe from this group, send email to
rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
For more options, visit this group at
http://groups.google.com/group/rubyonrails-talk?hl=en.
Hi Hans, On Wed, Jan 11, 2012 at 10:35 AM, Hans <Hans.Marmolin-6LjvI5LOC4niH4Lt12DN6A@public.gmane.org> wrote:> I tries to observe a change in a field with jquery in Rails 3.1 in > order to be able to implement two cascading select boxes. > A a first step I just try to observe a click in a div using jquery > I have the following function in a .js file that is loadedin the head > section (fieldset is the id of a div) and is displaying a view with > the div fieldset > > $(document).ready(function() { > $(''#fieldset'').bind({ > click: function() { > alert(''Change''); > // do something on click > }, > mouseenter: function() { > // do something on mouseenter > }; > }); > }); > But nothing happens when I click in the field > I suspect that I am using jquery in the wrong wayTry giving it an id of a different name. My guess is that jquery is ''confused'' by your use of ''fieldset'' as an id because it is also a tag name. HTH, Bill -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.
Hans Marmolin wrote in post #1040373:> $(document).ready(function() { > $(''#fieldset'').bind({ > click: function() { > alert(''Change''); > // do something on click > }, > mouseenter: function() { > // do something on mouseenter > }; > }); > }); > But nothing happens when I click in the field > I suspect that I am using jquery in the wrong way > I would appriciate any advice ! > HansI''d first try a simpler case just to make sure everything is "wired up" correctly: $(function() { $(''#fieldset'').click(function() { alert{"Clicked"); }); }); If this works then you know you''re finding the right HTML element and correctly binding a "click." Once you''ve confirmed this then try the more complex bind syntax. P.S. I used the shorthand for waiting for the DOM ready event for simplification & demonstration. -- Posted via http://www.ruby-forum.com/. -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.
Robert Walker wrote in post #1040404:> $(function() { > $(''#fieldset'').click(function() { alert("Clicked"); }); > }); > > If this works then you know you''re finding the right HTML element and > correctly binding a "click." Once you''ve confirmed this then try the > more complex bind syntax.If you''re using jQuery 1.7+ you might also want to consider using the new .on()/.off() methods for binding events. http://api.jquery.com/on/ -- Posted via http://www.ruby-forum.com/. -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.
Thanks for your advices
Your advices convinced me that the error was some minor typo or some
other detail
That was also true
The problem is
{ alert("Clicked"); })
when I changed that to
alert("Clicked");
and put everything with a ready function it worked
I am now trying more complex change functions that also seems to work
I have tried on and off and might use them
On 11 Jan, 20:56, Robert Walker
<li...-fsXkhYbjdPsEEoCn2XhGlw@public.gmane.org>
wrote:> Robert Walker wrote in post #1040404:
>
> > $(function() {
> > $(''#fieldset'').click(function() {
alert("Clicked"); });
> > });
>
> > If this works then you know you''re finding the right HTML
element and
> > correctly binding a "click." Once you''ve confirmed
this then try the
> > more complex bind syntax.
>
> If you''re using jQuery 1.7+ you might also want to consider using
the
> new .on()/.off() methods for binding events.
>
> http://api.jquery.com/on/
>
> --
> Posted viahttp://www.ruby-forum.com/.
--
You received this message because you are subscribed to the Google Groups
"Ruby on Rails: Talk" group.
To post to this group, send email to
rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
To unsubscribe from this group, send email to
rubyonrails-talk+unsubscribe@googlegroups.com.
For more options, visit this group at
http://groups.google.com/group/rubyonrails-talk?hl=en.