Аттрибуты элементов 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. В любом случае, функция возвращает текущее значение аттрибута.