Only use getAttributeNode on buttons when setting value
This commit is contained in:
parent
3a3842c669
commit
825d3d96ce
|
@ -435,6 +435,9 @@ if ( !jQuery.support.getSetAttribute ) {
|
||||||
// And the name attribute
|
// And the name attribute
|
||||||
formHook = jQuery.attrHooks.name = jQuery.attrHooks.value = jQuery.valHooks.button = {
|
formHook = jQuery.attrHooks.name = jQuery.attrHooks.value = jQuery.valHooks.button = {
|
||||||
get: function( elem, name ) {
|
get: function( elem, name ) {
|
||||||
|
if ( name === "value" && !jQuery.nodeName( elem, "button" ) ) {
|
||||||
|
return elem.getAttribute( name );
|
||||||
|
}
|
||||||
var ret = elem.getAttributeNode( name );
|
var ret = elem.getAttributeNode( name );
|
||||||
// Return undefined if not specified instead of empty string
|
// Return undefined if not specified instead of empty string
|
||||||
return ret && ret.specified ?
|
return ret && ret.specified ?
|
||||||
|
|
|
@ -77,7 +77,7 @@ test("prop(String, Object)", function() {
|
||||||
});
|
});
|
||||||
|
|
||||||
test("attr(String)", function() {
|
test("attr(String)", function() {
|
||||||
expect(34);
|
expect(35);
|
||||||
|
|
||||||
equals( jQuery("#text1").attr("type"), "text", "Check for type attribute" );
|
equals( jQuery("#text1").attr("type"), "text", "Check for type attribute" );
|
||||||
equals( jQuery("#radio1").attr("type"), "radio", "Check for type attribute" );
|
equals( jQuery("#radio1").attr("type"), "radio", "Check for type attribute" );
|
||||||
|
@ -90,6 +90,7 @@ test("attr(String)", function() {
|
||||||
equals( jQuery("#name").attr("name"), "name", "Check for name attribute" );
|
equals( jQuery("#name").attr("name"), "name", "Check for name attribute" );
|
||||||
equals( jQuery("#text1").attr("name"), "action", "Check for name attribute" );
|
equals( jQuery("#text1").attr("name"), "action", "Check for name attribute" );
|
||||||
ok( jQuery("#form").attr("action").indexOf("formaction") >= 0, "Check for action attribute" );
|
ok( jQuery("#form").attr("action").indexOf("formaction") >= 0, "Check for action attribute" );
|
||||||
|
equals( jQuery("#text1").attr("value", "t").attr("value"), "t", "Check setting the value attribute" );
|
||||||
equals( jQuery("#form").attr("blah", "blah").attr("blah"), "blah", "Set non-existant attribute on a form" );
|
equals( jQuery("#form").attr("blah", "blah").attr("blah"), "blah", "Set non-existant attribute on a form" );
|
||||||
equals( jQuery("#foo").attr("height"), undefined, "Non existent height attribute should return undefined" );
|
equals( jQuery("#foo").attr("height"), undefined, "Non existent height attribute should return undefined" );
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue