有没有办法使用 jQuery 通过索引获取多个元素——比如.eq(),但是你可以传入一个数组而不是单个索引?像这样的东西:
var arrIndexes = [0, 4, 5];
var stuff = $("#datatable tbody tr").eq(arrIndexes).css('background-color', 'red');
有没有办法使用 jQuery 通过索引获取多个元素——比如.eq(),但是你可以传入一个数组而不是单个索引?像这样的东西:
var arrIndexes = [0, 4, 5];
var stuff = $("#datatable tbody tr").eq(arrIndexes).css('background-color', 'red');
只需使用过滤器(索引)中的第一个参数并使用 indexOf 查找
var arrIndexes = [0, 4, 5];
$("#datatable tbody tr").filter(function(index) {
return arrIndexes.indexOf(index) > -1;
}).css('background-color', 'red');
演示:http: //jsbin.com/ivexut/1/
如果您需要旧版浏览器,您可能需要添加函数 indexOf:https ://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Array/indexOf
您可以使用 jquery 的过滤器功能对选择器返回的对象集合应用自定义过滤器,您可以在此处阅读有关过滤器的更多信息
$("#datatable tbody tr").filter(function(){
if(arrIndexes.indexOf($(this).index()) != -1)
return $(this);
}).css('background-color', 'red');