Code has been added to clipboard!

Getting and Setting Attribute Values With jQuery .attr()

Reading time 1 min
Published Jan 18, 2018
Updated Sep 27, 2019

jQuery attr: Main Tips

  • The jQuery .attr() method sets or returns the values of the specified attributes of the selected elements.
  • For attributes that haven't been set, this method will return undefined.
  • To get or set properties of elements, use prop().

All the Ways of Using attr

The jQuery .attr() method can both set and return the values of the specified element attributes. To make jQuery set attribute value, follow this syntax:

$(selector).attr(attributeName, newValue);

In the example below, we set the height attribute's value to 200:

Example
$("button").click(() => {
    $("img").attr("height","200");
});

Note: instead of naming newValue to make jQuery set attribute value, you can define a function that returns the value needed.

It is also possible to modify multiple attributes using jQuery .attr():

$(selector).attr({attributeName:newValue, attributeName:newValue, ...});

By skipping the newValue parameter, you make jQuery get attribute value:

$(selector).attr(attributeName);

Learn jQuery
Introduction
Selectors
Events
Event Methods
Download
Callback
Chaining
Get and Set
Add Element
Remove Element
Traverse
Parent
Children
Sibling Traverse
Filtering
jQuery AJAX
Effects
Show and Hide
Fade Effect
Slide Effect
Animate Effect
Manipulate CSS
Width and Height
.addClass()
.after()
.animate()
.append()
.appendTo()
.attr()
.before()
.bind() (deprecated)
.blur()
.change()
.click()
.clone()
.css()
.dblclick()
.delay()
.delegate() and .undelegate() (deprecated)
.detach()
.empty()
.end()
.error() (deprecated)
.fadeIn()
.fadeOut()
.fadeTo()
.fadeToggle()
.finish()
.focus()
.focusIn()
.focusOut()
.hasClass()
.height()
.hide()
.hover()
.html()
.innerHeight()
.innerWidth()
.insertAfter()
.insertBefore()
.keypress()
.keyup()
.live() and .die() (deprecated)
.load() (deprecated)
.mousedown()
.mouseenter()
.mouseleave()
.mousemove()
.mouseout()
.mouseover()
.mouseup()
.off()
.offset()
.offsetParent()
.on()
.one()
.outerHeight()
.outerWidth()
.position()
.prepend()
.prependTo()
.prop()
.proxy()
.queue()
.ready()
.remove()
.removeAttr()
.removeClass()
.removeProp()
.replaceAll()
.replaceWith()
.resize()
.scroll()
.scrollLeft()
.scrollTop()
.show()
.slideDown()
.slideToggle()
.slideUp()
.stop()
.submit()
.text()
.toggle()
.toggleClass()
.trigger()
.triggerHandler()
.unbind() (deprecated)
.unload() (deprecated)
.unwrap()
.val()
.width()
.wrap()
Event Properties
event.currentTarget
event.preventDefault()
event.relatedTarget
event.stopImmediatePropagation()
event.stopPropagation()
event.target
event.timeStamp
event.type
event.which
jQuery .find()
jQuery .keydown()
jQuery.noConflict()
pageY and pageX