![](/img/trans.png)
[英]How to select an element that have a classname and add to an array using javascript
[英]Select element by and classname in javascript
我有一个onChange事件,需要动态选择一个ID,然后添加一个预设的类名来传递给一个函数。
onChange = "show(document.getElementById(this.value). {select a class here? } );"
jquery中的等价物
$('#'+this.value+'.myclassname').function();
那么如何在javascript中选择ID + classname? 我知道我很密集。
你需要使用一个类名吗? Ids应该是独一无二的。
var element = document.getElementById('myId');
或者说element
是父母,你想要一个有孩子的孩子
var elements = element.getElementsByTagName('*');
var newElements = [];
for (var i = 0, length = elements.length; i < length; i++) {
if ((' ' + elements[i].className + ' ').indexOf(' yourClassName ') > -1) {
newElements.push(elements[i]);
}
}
此代码基本上遍历所有子代,并使用indexOf()
来测试您的类的存在。 如果找到它,它会将其推送到新数组。
来自http://www.anyexample.com/webdev/javascript/javascript_getelementsbyclass_function.xml
function getElementsByClass( searchClass, domNode, tagName) {
if (domNode == null) domNode = document;
if (tagName == null) tagName = '*';
var el = new Array();
var tags = domNode.getElementsByTagName(tagName);
var tcl = " "+searchClass+" ";
for(i=0,j=0; i<tags.length; i++) {
var test = " " + tags[i].className + " ";
if (test.indexOf(tcl) != -1)
el[j++] = tags[i];
}
return el;
}
getElementsByClass('center', document.getElementById('content'))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.