Заявление
document.getElementsByName('qm[7]')
не будет работать. Нет элементов, которые могут иметь имя qm[7]
. Вы имели в виду, что это ваш массив? В этом случае удалите кавычки, инициализируйте массив до этих операторов и заполните его именами элементов, которые вы хотите выбрать.
Функция getElementsByName
возвращает массив элементов. Чтобы использовать этот массив, вам нужно выбрать элементы в нем. I.e.:
var elems = document.getElementsByName("body");
var myBody = elems[0];
вы делаете это правильно в своих циклах.
Обновление: расширенный раздел и добавлено объяснение getElementsByTagName