# How to set the value of an attribute using JavaScript

By Atta Ur Rehman Shah (https://attacomsian.com/about). Published Aug 10, 2020, updated Sep 23, 2021. Topics: JavaScript.
Canonical URL: https://attacomsian.com/blog/javascript-dom-set-the-value-of-an-attribute

> Learn how to use the setAttribute() method to set the value of the attribute of an HTML element in JavaScript.

To set the value of an attribute on an HTML element, you can use the `setAttribute()` method. This method adds the specified attribute to an HTML and gives it the specified value.

If the attribute already exists, it only changes the value.

Let us say you have the following `<div>` element:

```html
<div class="pizza">Hot, spicy, pizza ?</div>
```

The following example adds the `title` attribute and sets its value:

```javascript
const pizza = document.querySelector('.pizza');

pizza.setAttribute('title', 'Italian Pizza');

console.log(pizza.getAttribute('title')); // Italian Pizza
```

You can also use `setAttribute()` method to [change the inline styles](https://attacomsian.com/blog/javascript-set-css-styles) of an element:

```javascript
pizza.setAttribute('style', 'background-color: pink;');
```

> Although the `setAttribute()` method sets the `style` attribute value, it is better to use the element's [style property](https://attacomsian.com/blog/javascript-dom-style-property) to change styles. By setting the value of `style` attribute directly, you'll overwrite all other CSS properties that may be specified in the `style` attribute.

The `setAttribute()` method can also be used to set the values of the HTML5 `data-*` attributes:

```javascript
pizza.setAttribute('data-type', 'italian');
```

This method works in all modern browsers, and IE9 and up.
