2015-06-03 7 views
0

Можно ли проверить, существует ли элемент в jQuery с помощью функции длины, хотя элемент пуст?jQuery проверить, существует ли пустой элемент

У меня есть пустой div <div id="myDiv"></div>, который заполняется AJAX, когда пользователь прокручивается до определенной точки на экране, но когда я пытаюсь настроить таргетинг на div до этого момента, я ничего не получаю. Код я использую ...

if(jQuery('#myDiv').length) { 
    alert('#myDiv exists!'); 
} else { 
    alert('#myDiv doesn\'t exist!'); 
} 

, но мне интересно, если причина, это не выбор DIV потому, что он пуст. Это имеет значение при использовании функции длины?

+1

нет, это не будет иметь ничего общего с ли его пустым или нет. дважды проверьте свой селектор – AmmarCSE

+3

FYI: '.length' - свойство не функция! –

ответ

2
length is a `property` and not a `function`. It should be 

if(jQuery('#myDiv').length) { 
    alert('#myDiv exists!'); 
} else { 
    alert('#myDiv doesn\'t exist!'); 
} 

Он должен быть ниже коды, предполагающие вы хотите проверить, является ли div пуста или не

if(jQuery('#myDiv').html().length > 0){ 
// If the div is empty do this 
} 
else{ 
    // If its not empty do this 
} 

Проверьте jQuery DOCS

EDIT: сверьтесь использовали условие if внутри document ready. Оформить скрипку

jQuery('#myDiv').html().length > 0 

Вот это Fiddle Link

+0

'<0' всегда будет возвращать false. –

+0

обновил ans .. это было немного очевидно, хотя – Abhinav

+0

Спасибо всем - я обновил исходное сообщение с кодом, но он возвращает тот же результат, есть ли div с этим идентификатором в документе или нет. Является ли их лучшим способом проверить, существует ли какой-либо элемент или нет, используя jQuery? –

5

.length - не метод. Это свойство, поэтому после этого удалите ().

if(jQuery('#myDiv').length) { 
    // If the div exists do this 
} else { 
    // If it doesn't do this 
} 
Смежные вопросы