Add, Change, and Remove Attributes with jQuery

Jquery Course

In this tutorial you can learn how to Add, Cange, and Remove Attributes (like id, class, href, disabled, etc.) in HTML elements using jQuery.
All these actions can be performed using the attr(), and removeAttr() jQuery methods.

- Select the last Option in the Select lists with class="cls" (by adding "selected" to that option):

$('select.cls option:last).attr('selected', 'selected');

- Add class="value" to even <li> within HTML tag with id="idtag":

$('#idtag li:even').attr('class', 'value');

• The class attribute can also be added with the jQuery method addClass().
Syntax:

$('element').addClass('attribute_name', 'attribute_value');

Example:
- Add the class "cls" to clicked DIV:

$('div').click(function() { $(this).addClass('cls'); });

• Another useful jQuery method for working with class attribute is toggleClass(). This function adds or removes one or more classes from each element in the set of matched elements. If an element in the matched set of elements already has the class, then it is removed; if an element does not have the class, then it is added.
- For example, toggle class "cls" to the clicked DIV:

$('div').click(function() { $(this).toggleClass('cls'); });

Change Attribute value

To change the value of an attribute, use the attr() method with this syntax:

$('element').attr('attribute_name', 'new_value');

Examples:
- Change the image of the IMG element with id="img1" (by changing the value of the "src" attribute):

$('img#img1').attr('src', 'new_image.jpg');

- Change the URL of the first link (<a>) in the HTML tag with id="idtag"

$('#idtag a:first').attr('href', 'http://www.courses.net');

- Change the file address added in the action of the form with id="frm1":

• The class attribute can also be removed with the removeClass() jQuery method.
For example, remove the class attribute of the clicked DIV:

$('div').click(function() { $(this).removeClass(); });

- If you specify a parameter to removeClass() function, with the value of a class, will be removed only that class (useful if the matched element/s has multiple classes), otherwise removes al classes of that element.

The type attribute of the <input> form fields can't be removed or changed.