Side navigation
#5954 closed bug (duplicate)
Opened January 27, 2010 10:18AM UTC
Closed November 23, 2010 01:01AM UTC
Last modified March 13, 2012 11:31PM UTC
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
Attachments (0)
Change History (7)
Changed April 19, 2010 02:22PM UTC by comment:1
Changed June 14, 2010 12:48AM UTC by comment:2
component: | unfiled → core |
---|
Changed November 04, 2010 04:24PM UTC by comment:3
owner: | → 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.
Changed November 07, 2010 03:27PM UTC by comment:4
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
Changed November 22, 2010 02:35AM UTC by comment:5
owner: | rtordable2 |
---|---|
status: | pending → new |
Changed November 23, 2010 01:01AM UTC by comment:6
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.