簡體   English   中英

在javascript中選擇element by和classname

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM