У меня есть несколько флажков на моей странице, каждый из которых имеет атрибут имени для его полезного значения.Зачем вам нужно повторно выбрать элемент JQuery из коллекции?
Я хочу получить список значений только для отмеченных предметов. Я могу получить коллекцию элементов, как так ...
var checkedItems = $(".checkbox:checked");
Теперь я хочу, чтобы создать список (строка), поэтому я создаю петлю ...
var list = "";
for (var i = 0; i < checkedItems.length; i++) {
list += $(checkedItems[i]).attr("name") + "\n";
}
Это работает и дает мне, что мой список. Но возникает вопрос, почему я должен применить объект JQuery thingy, т. Е. $(...)
, чтобы использовать свойство attr?
если я имел следующий вместо этого он не будет работать ...
list += checkedItems[i].attr("name") + "\n";
Но, конечно, массив должен быть набор элементов JQuery уже? Зачем переиздавать?
Here is a JSFiddle рабочего примера, если кто-то хочет попробовать это
EDIT: Почему это работает ...
var item = $("#item");
var name = item.attr("name");
Забыв опечатку в моем коде (который, кажется, все хотят исправить, не прочитав, что я написал правильно), вы ответили актуальный вопрос, так что спасибо за это;) – musefan