JQuery Почему это определение var дает неперехваченное исключение

Console.log выдает неперехваченное исключение: синтаксическая ошибка, нераспознанное выражение: #. Похоже, это вызвано $('#'+elmid+' div'). если я удалю #, то этой ошибки не будет. Чем это вызвано.

$(".abs").live('click',
function(e) {
    var elmid = $(this).attr('id');
    var editableid = $('#'+elmid+' div').attr('id');
    console.log(editableid);
});

person Hussein    schedule 29.01.2011    source источник


Ответы (1)


Я предполагаю, что выбранный элемент на самом деле не имеет атрибута id. Это означает, что ваш селектор # div, что, очевидно, является недопустимым селектором jQuery. Вместо этого вам следует использовать find:

var editableid = $(this).find('div').attr('id');
person lonesomeday    schedule 29.01.2011
comment
Да ты прав. Я получаю эту ошибку, потому что у одного из элементов div нет идентификатора. Спасибо за указание на это. - person Hussein; 29.01.2011