如何获取所有名称以字符串开头的元素? [英] How to get all elements which name starts with some string?
问题描述
我有一个HTML页面。
I have an HTML page.
我想提取所有以q1 _开头的元素。
I would like to extract all elements which name starts with "q1_".
如何在JavaScript中实现此功能?
How can I achieve this in JavaScript ?
谢谢!
Thanks !
推荐答案
快速简便的方法是使用 jQuery 并执行此操作:
A quick and easy way is to use jQuery and do this:
var $eles = $(":input[name^='q1_']").css("color","yellow");
这将抓住所有名称属性以'q1_'开头的元素。要将所得到的jQuery对象集合转换为DOM集合,请执行以下操作:
That will grab all elements whose name attribute starts with 'q1_'. To convert the resulting collection of jQuery objects to a DOM collection, do this:
var DOMeles = $eles.get();
请参阅 http://api.jquery.com/attribute-starts-with-selector/
在纯DOM,您可以使用 getElementsByTagName
来获取所有输入元素,并循环遍历结果数组。含有 name
以'q1_'开头的元素被推送到另一个数组:
In pure DOM, you could use getElementsByTagName
to grab all input elements, and loop through the resulting array. Elements with name
starting with 'q1_' get pushed to another array:
var eles = [];
var inputs = document.getElementsByTagName("input");
for(var i = 0; i < inputs.length; i++) {
if(inputs[i].name.indexOf('q1_') == 0) {
eles.push(inputs[i]);
}
}
这篇关于如何获取所有名称以字符串开头的元素?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!