2014-12-22 3 views
-1

Чтобы проверить, существует ли элемент (например, DIV), я использую это:Jquery: Если элемент существует, то получить его

if($('div#someId').length != 0) 
{ 
    // make stuff 
} 

Теперь мне нужен этот элемент в своих функциях, но я не» я знаю, как я могу ссылаться на него.

Например (я знаю, что это глупый пример, но он служит только для объяснения):

if($('div#chart-google').length != 0) 
{ 
    var target = $(this).attr('id'); 
    google.drawChart(target,data,options); 
} 

Итак, как я могу сослаться на него в моем сценарии?

+0

Обратите внимание, что вы можете безопасно обращаться к jQuery-методам в пустой коллекции jQuery (селектор не соответствует ни одному элементу): '$ (" # doesnotexist "). Attr (" id ")' возвращает 'undefined' –

ответ

4

Место это до если заявление в переменную

var elem = $('div#someId'); 

if(elem.length != 0) 
{ 
    // make stuff 
    var target = elem.attr('id'); 
} 
+0

@sineverba make sure пометить андерсера, чтобы закрыть эту тему – Mivaweb

0

Вы можете использовать .each() метод для «итерационный» через один элемент - ID селекторы возвращает только один элемент. И ваш селектор не должен включать в себя div, ID-селекторы уникальны сами по себе.

$('#chart-google').each(function() { 
    google.drawChart(this.id, data, options); 
}); 

Если элемент существует, выполняется строка google.drawChart(..); он игнорируется, если элемент не существует.

Смежные вопросы