有没有办法使用具有required
属性的表单字段填充JavaScript数组?
我尝试了这段代码......
var requiredfields = new Array();
function getInputs() {
var fields = document.getElementsByTagName('input');
for (var i = 0; i < fields.length; i++) {
alert('I am input field ' + i);
//var required = fields[i].getAttribute('required');
if (fields[i].getAttribute('required')) {
fields[i].style.border = '1px solid #ff0000';
requiredfields.push(fields[i]);
}
}
}
不幸的是,它甚至没有放置边框或显示警报。我甚至不确定getElementsByTagName
是否正确地返回数据。
我的代码很可能是怪人。呵呵呵...
答案 0 :(得分:1)
在现代浏览器中,您可以这样做:
var required = document.querySelectorAll('input[required]');
Array.prototype.forEach.call(required, function(element){
element.style.border = '1px solid #ff0000';
});
或者只在样式表中使用CSS规则:
input[required] {
border: 1px solid #ff0000;
}
答案 1 :(得分:1)
您可以使用此脚本:
var requiredfields = new Array();
var fields = document.getElementsByTagName('input');
for (var i = 0; i < fields.length; i++) {
if (fields[i].getAttribute("required") != null) {
fields[i].style.border = '1px solid #ff0000';
requiredfields.push(fields[i]);
}
}