我正在制作一个用于表单验证的插件作为实践,但由于某种原因,在我创建 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);
这同样简单。
关于javascript - setAttribute 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18970358/