Получить атрибут имени для нескольких родителей - PullRequest
1 голос
/ 23 ноября 2010

У меня есть следующий код:

var parentEls = $(root)
                .find("credit standard")
                .parents()
                .map(function () { 
                  return this.tagName; 
                    })
                .get()
                .join(" > ");
                alert(parentEls);

            $("#breadcrumb").append("<p>" + parentEls + "</p>");

Это прекрасно работает, чтобы вернуть родителей. Однако я не хочу возвращать tagName, вместо этого я хочу указать атрибут name для каждого родителя Я пытался

.map(function () { 
                      return this.attr("name"); 
                        })

но это не работает. Есть ли способ сделать это, не прибегая к петле?

Ответы [ 3 ]

2 голосов
/ 23 ноября 2010

attr - это не нативный метод, это метод jQuery. Поэтому попробуйте заключить ваш this в конструктор jQuery:

return $(this).attr('name');

или используйте метод getAttribute вместо:

return this.getAttribute('name');
0 голосов
/ 23 ноября 2010

Я бы попробовал следующее

.map(function () { 
   return $(this).attr("name"); 
 })
0 голосов
/ 23 ноября 2010

Вы должны обернуть элемент с помощью jQuery, чтобы использовать .attr. Либо использовать

this.name

или $(this).attr('name')

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...