Bug Tracker

Opened 12 years ago

Closed 12 years ago

#1884 closed bug (fixed)

javascript, loaded via ajax not binding inside a parent element.

Reported by: frankysanders Owned by:
Priority: major Milestone: 1.2.2
Component: ajax Version: 1.2.1
Keywords: Cc:
Blocked by: Blocking:

Description

Steps to reproduce.

1) load ajax via .ajax() method 2) put in dom via (id).html(ajax_result);

The following example works:

ajax_result =

<a href="#">hello</a>
<script> 
    alert('I will execute');
    $(document).ready(function(){
         $("a").click(function() {alert('hi');});
    })
</script>

Howerver, this example does not:

ajax_result =

<div>
<a href="#">hello</a>
<script> 
    alert('I will execute');
    $(document).ready(function(){
         $("a").click(function() {alert('hi, but you won\'t see me');});
    })
</script>
</div>

Notice that the only difference is that one binding happens inside of a parent element.

I've tested this behavior in IE 7 and FF 2.0.0.8

I'm not sure if this behavior be expected to work as it's generally recommended to leave javascript out of the body of a document however sometimes it's necessary.

Attachments (1)

jquery_test.html (1.3 KB) - added by davidserduke 12 years ago.
test case

Download all attachments as: .zip

Change History (3)

comment:1 Changed 12 years ago by davidserduke

Component: coreajax

See #1519 and #1959 that are similar.

Changed 12 years ago by davidserduke

Attachment: jquery_test.html added

test case

comment:2 Changed 12 years ago by davidserduke

Resolution: fixed
Status: newclosed

This appears to be fixed in SVN rev 4092 (it did fail in 1.2.1). There were several changes made to that section of the code but none were specficially made for this ticket so if something still doesn't work please reopen with additional information/test cases.

Note: See TracTickets for help on using tickets.