Skip to main content

Bug Tracker

Side navigation

#1884 closed bug (fixed)

Opened November 02, 2007 08:01AM UTC

Closed December 10, 2007 06:13PM UTC

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 December 10, 2007 06:11PM UTC.

    test case

Change History (2)

Changed December 06, 2007 03:08AM UTC by davidserduke comment:1

component: coreajax

See #1519 and #1959 that are similar.

Changed December 10, 2007 06:13PM UTC by davidserduke comment:2

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.