Skip to content
Permalink
Browse files
Check empty string instead of specified as specified is inconsistent …
…on the name attribute. Fixes #9148.
  • Loading branch information
timmywil committed May 6, 2011
1 parent f7f8450 commit c72b0f3
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 3 deletions.
@@ -491,8 +491,8 @@ if ( !jQuery.support.getSetAttribute ) {
return elem.getAttribute( name );
}
ret = elem.getAttributeNode( name );
// Return undefined if not specified instead of empty string
return ret && ret.specified ?
// Return undefined if nodeValue is empty string
return ret && ret.nodeValue !== "" ?
ret.nodeValue :
undefined;
},
@@ -144,7 +144,7 @@ test("attr(Hash)", function() {
});

test("attr(String, Object)", function() {
expect(57);
expect(58);

var div = jQuery("div").attr("foo", "bar"),
fail = false;
@@ -164,6 +164,8 @@ test("attr(String, Object)", function() {
equals( jQuery("#name").attr("name"), "something", "Set name attribute" );
jQuery("#name").attr("name", null);
equals( jQuery("#name").attr("name"), undefined, "Remove name attribute" );
var $input = jQuery("<input>", { name: "something" });
equals( $input.attr("name"), "something", "Check element creation gets/sets the name attribute." );

jQuery("#check2").prop("checked", true).prop("checked", false).attr("checked", true);
equals( document.getElementById("check2").checked, true, "Set checked attribute" );

0 comments on commit c72b0f3

Please sign in to comment.