#5954 closed bug (duplicate)
jQuery(html) create child script elements at root level
Reported by: | rtordable2 | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | 1.4.2 |
Component: | core | Version: | 1.4.1 |
Keywords: | jQuery(html) each | Cc: | |
Blocked by: | Blocking: |
Description
jQuery(html) extract child script elements from html and put them in the root level. It doesn't respects de parent/child relationship and when I print out
Example:
var html = $("<div><div id='container1'>" +
"<script type='text/javascript'>" +
"alert('hello world');" +
"</script>" +
"<span>hello world </span>" + "<div id='container1.1'>" +
"<script type='text/javascript'>" +
"alert('hello world 2');" +
"</script>" +
"</div>" +
"</div>" +
"<div id='container2'>" +
"<span>hello world 3</span>" +
"</div></div>");
html.each(function(i){
console.log($(this).html());
});
I obtain the following 3 elements:
<div id="container1"><span>hello world </span><div id="container1.1"></div></div><div id="container2"><span>hello world 3</span></div>
alert('hello world');
alert('hello world 2');
With jQuery 1.3.2 we obtain only 1 element and with html(), the script tags and its content is printed in their corresponding level.
Thanks.
Ramón
Change History (7)
comment:1 Changed 12 years ago by
comment:2 Changed 12 years ago by
Component: | unfiled → core |
---|
comment:3 Changed 12 years ago by
Owner: | set to rtordable2 |
---|---|
Status: | new → pending |
Please resubmit your test case on jsFiddle as there are a number of string literal issues with the code you have posted.
comment:4 Changed 12 years ago by
Here you are the test case:
Tested with jQuery 0 GIT, 1.4.2 and 1.4.3 versions. It only works with jQuery 1.3.2. The expected result is one element with its javascripts childs included in their corresponding level.
Thanks.
Rtordable
comment:5 Changed 12 years ago by
Owner: | rtordable2 deleted |
---|---|
Status: | pending → new |
comment:6 Changed 12 years ago by
Resolution: | → duplicate |
---|---|
Status: | new → closed |
With jQuery 1.3.2 the result is:
<div id="container1"><script type="text/javascript">alert('hello world');</script><span>hello world </span><div id="container1.1"><script type="text/javascript">alert('hello world 2');</script></div></div><div id="container2"><span>hello world 3</span></div>
The HTML code with the javascript.