aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/attributes.js4
-rw-r--r--test/unit/attributes.js5
2 files changed, 7 insertions, 2 deletions
diff --git a/src/attributes.js b/src/attributes.js
index af1660fa6..0eac08a6f 100644
--- a/src/attributes.js
+++ b/src/attributes.js
@@ -322,7 +322,9 @@ jQuery.extend({
hooks = boolHook;
// Use formHook for forms and if the name contains certain characters
- } else if ( formHook && (jQuery.nodeName( elem, "form" ) || rinvalidChar.test( name )) ) {
+ } else if ( formHook && name !== "className" &&
+ (jQuery.nodeName( elem, "form" ) || rinvalidChar.test( name )) ) {
+
hooks = formHook;
}
}
diff --git a/test/unit/attributes.js b/test/unit/attributes.js
index 79730026a..8f2eb7237 100644
--- a/test/unit/attributes.js
+++ b/test/unit/attributes.js
@@ -40,7 +40,7 @@ test("jQuery.attrFix/jQuery.propFix integrity test", function() {
});
test("attr(String)", function() {
- expect(38);
+ expect(39);
equals( jQuery("#text1").attr("type"), "text", "Check for type attribute" );
equals( jQuery("#radio1").attr("type"), "radio", "Check for type attribute" );
@@ -117,6 +117,9 @@ test("attr(String)", function() {
ok( jQuery("<div/>").attr("doesntexist") === undefined, "Make sure undefined is returned when no attribute is found." );
ok( jQuery().attr("doesntexist") === undefined, "Make sure undefined is returned when no element is there." );
+
+ var $form = jQuery("<form class='something'></form>").appendTo("#qunit-fixture");
+ equal( $form.attr("class"), "something", "Retrieve the class attribute on a form" );
});
if ( !isLocal ) {