Возможно ли проверить если внутри li блок ul на js?

167
14 января 2019, 23:50

мне нужно проверить если ли внутри блока li блок ul и если его нету то выполнить действие

Answer 1
var element_li = ...;
if (!element_li.querySelector("ul")) {
  // нету
}
Answer 2

jQuery решение:

var hasUl = $('li').find('ul');
if(!hasUl){
    //li не имеет ul
}

js решение:

var li = document.getElementById('idOfLi');
var hasUl = li.getElementsByTagName('ul').length > 0;
if(!hasUl){
    //li не имеет ul
}
Answer 3

Самое простое - дернуть querySelector('li') у нужного ul и посмотреть на результат

document.getElementById('btn').addEventListener('click', function() { 
  var id = document.getElementById('sel').value; 
  var ul = document.getElementById(id); 
  if (ul.querySelector('li')) 
    console.log('Have item'); 
  else 
    console.log('Empty'); 
});
<ul id="ul-1"></ul> 
<ul id="ul-2"> 
  <li>Item</li> 
</ul> 
<select id="sel"> 
  <option>ul-1</option> 
  <option>ul-2</option> 
</select> 
<button id="btn">Test</button>

READ ALSO
skype api создание чата между 2 пользователями

skype api создание чата между 2 пользователями

как можно по нажатию на кнопку(ссылка которая выводится для конкретного пользователя) создавать чат в скайпе и подключиться к этому чату...

141
async-await непонятная строка

async-await непонятная строка

У меня есть задача, в ней есть строка которую я не совсем могу понять, разъясните мне пожалуйста следующее

224
Подсчет скрытых элементов

Подсчет скрытых элементов

Есть фото галерея, она отображает 5 элементов, остальные скрыты при помощи свойства overflow : hiden, вопрос: как можно сделать подсчет и вывод числа...

167