Jsoup: Оптимальный способ проверить, есть ли у <div>идентификатор - PullRequest
0 голосов
/ 22 марта 2011

Я могу перебрать все элементы div в документе, используя getElementsByTag ("div") .

Теперь я хочу создать список только тех элементов div, которые имеют атрибут «id» (т.е. элементов div с атрибутом «class» не должно быть в списке).

Интуитивно я думал проверить что-то вроде этого:

  if (divElement.attr("id") != "")
    add_to_list(divElement);

Правильно ли подходит мой подход?

Есть ли более оптимальный способ проверки наличия атрибута "id"? (приведенное выше использует сравнение строк для каждого элемента в документе DOM)

Ответы [ 2 ]

1 голос
/ 22 марта 2011

Вы можете сделать это следующим образом:

Elements divsWithId = doc.select("div[id]");
for(Element element : divsWithId){
    // do something
}

Ссылка:

0 голосов
/ 22 марта 2011

Попробуйте это:

var all_divs = document.getElementsByTagName("div");
var divs_with_id = [];

for (var i = 0; i < all_divs.length; i++)
  if (all_divs[i].hasAttribute("id"))
    divs_with_id.push(all_divs[i]);
...