2015-04-22 1 views
1

У меня есть селектор $(".status"), который возвращает несколько элементов. У меня есть параметры данных, установленные для каждого из этих элементов.Как получить параметры данных из jquery multiple selection?

$(".status").each(function (e) { 
    e.data('options') 
}); 

Это объясняет ошибку: undefined is not a function.

Если это помогает, я использую Marionette, также пробовал массив хеш-памяти this.ui.status, но тот же результат.

ответ

4

первого аргумент в each функции для индекса элемента согласованного выбора.

.each (функция) Функция Тип: Функция (целочисленный индекс, элемент-элемент) Функции для выполнения для каждого элемента. Вам необходимо использовать:

Таким образом, вам нужно либо передать e в качестве второго аргумента, либо индекс как первый аргумент. Или, скорее, использовать this для доступа к текущему объекту

$(".status").each(function(e){ 
    alert($(this).data('options')); 
}); 
2

.each() имеет 2 аргумента, 1 - индекс текущего элемента, 2 - позицию элемента dom текущего элемента.

$(".status").each(function (i, e) { 
    $(e).data('options') 
}); 

Кроме того, необходимо получить доступ к обертке Jquery к элементу, чтобы вызывать любые методы JQuery на него, передавая его jQuery