Аттрибуты элементов DOM устанавливаются двумя методами. Первый метод - это использование функций getAttribute() и setAttribute():

// получение значения аттрибута
elem.getAttribute("id");

// установка значения аттрибута
elem.setAttribute("value","The word");

Второй метод - это использование именованных свойств элементов:

// получение значения аттрибута элемента elem
var name = elem.name;

// установка значения аттрибута элемента elem
elem.name = "username";

Однако здесь есть оговорки - такие слова, как class и for являются зарезервированными в JavaScript, поэтому вместо них необходимо использовать заместители - className и htmlFor соответственно.

Удобным методом унифицировать установку и получение значений может послужить следующая функция:

function attr(elem, name, value) {
	if ( !name || name.constructor != String ) return "";
		if(name == 'class' || name == 'for'){
			name = { "for": "htmlFor", "class": "className" }[name] || name;
			elem[name] = value;
		} else {
			elem.setAttribute(name, value);
	}
	return elem[name] || elem.getAttribute(name) || "";
}

Если функция получает аргумент value то он присваивается аттрибуту name элемента elem. В любом случае, функция возвращает текущее значение аттрибута.

Добавить в закладки:

Оставить комментарий