live() version: http://pastebin.com/f5781ee8b

The live() version works...as long as you don't introduce a second
block.

In this example "blk_1" and "blk_2" can be independently between
STATE1 and STATE2 as long as you make sure that the last click
switches a block to STATE1 before you modify the other block. If you
switch a block to STATE2 and then modify the other block then the
initial block can no longer be switched back and forth. Apparently the
die() removes the handler from both blocks despite only adressing the
"own" block using a selector like e.g. "#blk_1 .blk_type".

Again if you replace the "'#'+block_id+' .blk_type'" bits by
"'#'+block_id" so that the handler is no longer attached to the
dynamically inserted html but the outer static div around it the
example starts working as it should.

This is problematic since what I'm actually trying to do is to get
html code from the server via ajax that represents a panel with
buttons and I then need to attach a click handler to these buttons
which will then again send an ajax request to the server.

I have no idea how to implement something like this if I cannot insert
html with html() and then attach event handler to the inserted
elements.

On Jul 8, 5:06 am, Ralph Whitbeck <ralph.whitb...@gmail.com> wrote:
> Have you tried using live instead of bind?
>
> http://docs.jquery.com/Events/live#typefn
>
> On Tue, Jul 7, 2009 at 9:15 PM, Dennis Jacobfeuerborn <
>
> djacobfeuerb...@gmail.com> wrote:
>
> >http://pastebin.com/f6990228d
>
> > In this code clicking on the text should change it between "STATE1"
> > and "STATE2" but doesn't. It actually does switch to STATE1 again but
> > due to a spurious "click" event immediately switches back to STATE2 so
> > that the switch can't be really seen. Uncommenting the commented
> > javascript line and commenting the one above it no longer uses html()
> > and show the correct behavior.
>
> > Is this a bug or am I doing something fundamentally wrong here?
>
> > Regards,
> >  Dennis
>
> > PS: I filed a bug here:http://dev.jquery.com/ticket/4867
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"jQuery Development" group.
To post to this group, send email to jquery-dev@googlegroups.com
To unsubscribe from this group, send email to 
jquery-dev+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/jquery-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to