, предполагающих каждую новую ветвь в дереве является ДИВ, у меня есть реализовано это решение с 2-мя функциями:
function fillArray(vector1,vector2){
for (var i = 0; i < vector1.length; i++){
if (vector1[i].id.indexOf('q17_') == 0)
vector2.push(vector1[i]);
if(vector1[i].tagName == 'DIV')
fillArray (document.getElementById(vector1[i].id).children,vector2);
}
}
function selectAllElementsInsideDiv(divId){
var matches = new Array();
var searchEles = document.getElementById(divId).children;
fillArray(searchEles,matches);
return matches;
}
Теперь предполагая, идентификатор вашего Div является «myDiv», все, что вам нужно сделать, это создать элемент массива и установите его значение в го e Возврат функции:
var ElementsInsideMyDiv = new Array();
ElementsInsideMyDiv = selectAllElementsInsideDiv('myDiv')
Я тестировал его, и это сработало для меня. Надеюсь, это поможет вам.
Возможный дубликат http://stackoverflow.com/questions/2617480/how-to-get-all-elements-which-name-starts-with-some-string – graphicdivine
Я хотел бы знать, как достичь этого в JavaScript. –
Я думал, что это другой вопрос, поэтому я открыл новую тему. document.getElementsByTagName ("div") вернет все div в документе. Мне это не нужно. У меня уже есть div в переменной. Мне нужно найти внутри этого div все элементы, id которых начинается с «q17_», например. –