.removeAttr( attributeName )Returns: jQuery
Description: Remove an attribute from each element in the set of matched elements.
-
version added: 1.0.removeAttr( attributeName )
- attributeNameType: StringAn attribute to remove; as of version 1.7, it can be a space-separated list of attributes.
-
The .removeAttr()
method uses the JavaScript removeAttribute()
function, but it has the advantage of being able to be called directly on a jQuery object and it accounts for different attribute naming across browsers.
Note: Removing an inline onclick
event handler using .removeAttr()
doesn't achieve the desired effect in Internet Explorer 8, 9 and 11. To avoid potential problems, use .prop()
instead:
$element.prop( "onclick", null ); console.log( "onclick property: ", $element[ 0 ].onclick );
Example:
Clicking the button changes the title of the input next to it. Move the mouse pointer over the text input to see the effect of adding and removing the title attribute.
<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>removeAttr demo</title> <script src="https://code.jquery.com/jquery-1.10.2.js"></script> </head> <body> <button>Change title</button> <input type="text" title="hello there"> <div id="log"></div> <script> (function() { var inputTitle = $( "input" ).attr( "title" ); $( "button" ).click(function() { var input = $( this ).next(); if ( input.attr( "title" ) === inputTitle ) { input.removeAttr( "title" ) } else { input.attr( "title", inputTitle ); } $( "#log" ).html( "input title is now " + input.attr( "title" ) ); }); })(); </script> </body> </html>