Skip to content
Permalink
Browse files

Fixed the case where HTML that contained entities was being inserted …

…as text strings instead of HTML. Thanks to dmethvin for the test case! Fixes #5483.
  • Loading branch information
jeresig committed Nov 11, 2009
1 parent 449e099 commit 7c4144fab314d98b85303d01ab904bb711bc2ecc
Showing with 8 additions and 2 deletions.
  1. +1 −1 src/manipulation.js
  2. +7 −1 test/unit/manipulation.js
@@ -4,7 +4,7 @@ var rinlinejQuery = / jQuery\d+="(?:\d+|null)"/g,
rselfClosing = /^(?:abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i,
rtagName = /<([\w:]+)/,
rtbody = /<tbody/i,
rhtml = /</,
rhtml = /<|&\w+;/,
fcloseTag = function(all, front, tag){
return rselfClosing.test(tag) ?
all :
@@ -643,7 +643,7 @@ test("val(Function)", function() {
})

var testHtml = function(valueObj) {
expect(17);
expect(20);

window.debug = true;

@@ -676,6 +676,12 @@ var testHtml = function(valueObj) {
equals( $div.html(valueObj( 5 )).html(), '5', 'Setting a number as html' );
equals( $div.html(valueObj( 0 )).html(), '0', 'Setting a zero as html' );

var $div2 = jQuery('<div/>'), insert = "&lt;div&gt;hello1&lt;/div&gt;";
equals( $div2.html(insert).html(), insert, "Verify escaped insertion." );
equals( $div2.html("x" + insert).html(), "x" + insert, "Verify escaped insertion." );
equals( $div2.html(" " + insert).html(), " " + insert, "Verify escaped insertion." );


reset();

jQuery("#main").html(valueObj('<script type="something/else">ok( false, "Non-script evaluated." );</script><script type="text/javascript">ok( true, "text/javascript is evaluated." );</script><script>ok( true, "No type is evaluated." );</script><div><script type="text/javascript">ok( true, "Inner text/javascript is evaluated." );</script><script>ok( true, "Inner No type is evaluated." );</script><script type="something/else">ok( false, "Non-script evaluated." );</script></div>'));

0 comments on commit 7c4144f

Please sign in to comment.
You can’t perform that action at this time.