Я делаю плагин для проверки формы как практики, но по какой-то причине после того, как я создаю элемент h2 и пытаюсь установить его атрибут, он не работает. Вот код
var testing = function(regex, value, error_msg, error_msg_field_id){
var pattern = new RegExp(regex);
if (!pattern.test(value)){
var ele = document.createElement("H2");
var node = document.createTextNode(error_msg);
ele.setAttribute('style', 'color:white');
alert("hi");
jQuery(error_msg_field_id).append(node);
}
}
текст появляется без проблем, но он не белого цвета. Это не имеет никакого смысла для меня
Вы правильно используете setAttribute, но вы устанавливаете свойство на свой h2-элемент, который никогда не вставлен в DOM.
Вы можете изменить и упростить соответствующий раздел своего кода, чтобы:
var ele = document.createElement("H2");
ele.textContent = error_msg;
ele.setAttribute('style', 'color:white');
jQuery(error_msg_field_id).append(ele);
Использование jQuery здесь также не обязательно. Вы можете просто использовать
document.querySelector("#" + error_msg_field_id).appendChild(ele);
что одинаково просто.