如何在for循环中从document.getElementByClass更改元素的属性?

时间:2015-11-28 13:30:54

标签: javascript

如何在加载时填充多个模式?我不能让这个工作:

function IPPattern() {
    for(i = 0; i < document.getElementByClass("IPForm").length; i++){
        document.getElementByClass("IPForm")[i].pattern = "somregex";
    };
}

<body onload="IPPattern();">

<input placeholder="Enter IP address..." type="text" class="IPForm" required>

2 个答案:

答案 0 :(得分:0)

首先,它是getElementsByClassName,而不是getElementByClass

除此之外,您不应该按类名选择元素。请改用id。类通常保留给CSS。

var ipform = document.getElementsByClassName("ipform")
for (i = 0; i < ipform.length; i++) {
    ipform[i].setAttribute("pattern", "someregex");
}

答案 1 :(得分:-1)

首先,您不能像这样设置自己的属性。正确的代码是:

document.getElementsByClassName("IPForm")[i].setAttribute("pattern", "somregex");

我的第二句话是该函数是getElementsByClassName()而非getElementByClassName()