mirror of
https://github.com/jquery/jquery.git
synced 2025-01-10 18:24:24 +00:00
Fix #12127, fer real. IE9/10 check state on clone. Close gh-875.
This commit is contained in:
parent
a475f1aa4d
commit
155855b2a9
@ -129,3 +129,4 @@ David Benjamin <davidben@mit.edu>
|
|||||||
Uri Gilad <antishok@gmail.com>
|
Uri Gilad <antishok@gmail.com>
|
||||||
Chris Faulkner <thefaulkner@gmail.com>
|
Chris Faulkner <thefaulkner@gmail.com>
|
||||||
Elijah Manor <elijah.manor@gmail.com>
|
Elijah Manor <elijah.manor@gmail.com>
|
||||||
|
Daniel Chatfield <chatfielddaniel@googlemail.com>
|
||||||
|
@ -455,9 +455,8 @@ function cloneFixAttributes( src, dest ) {
|
|||||||
// IE6-8 fails to persist the checked state of a cloned checkbox
|
// IE6-8 fails to persist the checked state of a cloned checkbox
|
||||||
// or radio button. Worse, IE6-7 fail to give the cloned element
|
// or radio button. Worse, IE6-7 fail to give the cloned element
|
||||||
// a checked appearance if the defaultChecked value isn't also set
|
// a checked appearance if the defaultChecked value isn't also set
|
||||||
if ( src.checked ) {
|
|
||||||
dest.defaultChecked = dest.checked = src.checked;
|
dest.defaultChecked = dest.checked = src.checked;
|
||||||
}
|
|
||||||
|
|
||||||
// IE6-7 get confused and end up setting the value of a cloned
|
// IE6-7 get confused and end up setting the value of a cloned
|
||||||
// checkbox/radio button to an empty string instead of "on"
|
// checkbox/radio button to an empty string instead of "on"
|
||||||
|
@ -1895,3 +1895,15 @@ test("html() - script exceptions bubble (#11743)", function() {
|
|||||||
ok( false, "error ignored" );
|
ok( false, "error ignored" );
|
||||||
}, "exception bubbled from remote script" );
|
}, "exception bubbled from remote script" );
|
||||||
});
|
});
|
||||||
|
|
||||||
|
test("checked state is cloned with clone()", function(){
|
||||||
|
expect(2);
|
||||||
|
|
||||||
|
var elem = jQuery.parseHTML("<input type='checkbox' checked='checked'/>")[0];
|
||||||
|
elem.checked = false;
|
||||||
|
equal( jQuery(elem).clone().attr("id","clone")[0].checked, false, "Checked false state correctly cloned" );
|
||||||
|
|
||||||
|
elem = jQuery.parseHTML("<input type='checkbox'/>")[0];
|
||||||
|
elem.checked = true;
|
||||||
|
equal( jQuery(elem).clone().attr("id","clone")[0].checked, true, "Checked true state correctly cloned" );
|
||||||
|
});
|
||||||
|
Loading…
Reference in New Issue
Block a user