在jQuery中选择一个元素数组

4
我需要将一组元素包装成一个 jQuery 对象,就像它们被选中一样,这样我就可以在它们上面调用各种 jQuery 操作。
我正在寻找类似下面的函数foo,它接受一个元素数组,并返回一个包含它们的 jQuery 对象。
var elements = [element1, element2, element3];

$(foo(elements)).click(function() {
    ...
});

有人能解释一下这个吗?

非常感谢。


你是如何选择elements中的元素的? - Daniel A. White
这个数组中的元素是jQuery包装的元素还是普通的DOM引用? - alex
@Daniel 我有一个元素表,我需要选择所有名称格式相同的列下的元素。例如,所有表示位置的表单元素都将具有 foo*.bar*.location 的名称格式,其中 * 是索引。我不确定如何选择它们,所以我想在 for 循环中使用 document.getElementById(),因为我知道行数。 - Tom Tucker
@alex 这些是DOM引用。 - Tom Tucker
3个回答

7

请注意,它按照数组中出现的顺序处理它们 - 如果这样的事情很重要,那就很好。 - Grinn
1
就像他所说的那样,只有当它们是对DOM的引用时才会起作用。您的fiddle与jQuery选择器一起工作。当您考虑它时,这种做法就有点合理了。您不会编写$($("#id"))来选择一个元素。 - Peter-Paul

4

使用jQuery.each

示例:

$.each(elements, function(index, element) { 
    $(element).doStuff();
});

2

使用 each 方法可以迭代对象和数组

var elements = ['element1', 'element1', 'elements3'];
$.each(elements, function(index, value) {
    alert(index + ': ' + value);
});

请查看实际工作示例,网址为http://jsfiddle.net/LpZue/


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接