我想选择以特定序列开头的所有元素。 该序列类似于 work_XXXXXX。如何实现?
最佳答案
我在 jquery 和 javascript 中都提供了答案,但最好的选择是使用 jquery,因为使用 javascript 你将不得不循环遍历所有元素并匹配你想要的模式,这是非常耗时的过程,所以我更喜欢使用 jquery:
查找属性名称以“work_”开头的所有输入,并在其中放入文本。
<input name="newsletter" />
<input name="work_man" />
<input name="work_boy" />
<script>
$('input[name^="work_"]').val('work here!');
</script>
http://api.jquery.com/attribute-starts-with-selector/
http://api.jquery.com/category/selectors/
使用 javascript 时,它们不是内置关键字,但您可以通过遍历所有元素并检查所需模式的匹配来做到这一点,这种方式:
var idStart = "work_";
var componentContainer = document.getElementById("containerTable").getElementsByTagName("DIV");
for (var i = 0; i < componentContainer.length; i++) {
var id = componentContainer[i].id;
if ((id.length >= idStart.length) && (id.substring(0, idStart.length - 1) == idStart))// you can also use regular expression here to match desired pattern
{
//do something...
}
}
关于javascript - 如何按名称选择元素列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4193579/