迭代表单元素时获取div

时间:2015-11-04 15:45:10

标签: javascript html forms

Here我学会了如何获得包含form的{​​{1}}。

现在,假设我要点击“重置”按钮,清除div内的所有divs。迭代表单的元素时:

form

我知道var F = some_form; for (var i=0; i<F.elements.length; i++) { if (F.elements[i].id.substr(0,3) == 'div') { F.elements[i].innerHTML = ''; } } 未添加为包含divs的元素。似乎我需要获取包含form的{​​{1}},然后在document内搜索form。但这比较慢。还有其他办法吗?

2 个答案:

答案 0 :(得分:2)

使用getElementsByTagName()查找div中的form元素:

&#13;
&#13;
var F = document.getElementById('foo');

var divs = F.getElementsByTagName('div');

for (var i = 0; i < divs.length; ++i)
  divs[i].innerHTML = '';
&#13;
<form action="" id="foo">
  <div>div</div>
  <div>another</div>
</form>
&#13;
&#13;
&#13;

答案 1 :(得分:1)

在某种程度上有一些迭代。您是否已分配了所有希望定位css类属性的div?如果是这样,您可以.getElementsByClassName('className')遍历它们。 EG。

var divs = some_form.getElementsByClassName('target'),
    dL = divs.length;
while(dL--) {
    divs[dL].innerHTML = '';
}

N.B。表单.elementsnameid属性定位。见enter image description here