2015-05-22 21 views
0

我想問,我如何使用jquery和grep篩選數據?jquery grep和針對其他陣列的篩選

一些示例代碼:

var arr = ['11','21'] 

obj = $.grep(obj, function (element, index) { 
     return element.Id == 11; 
    }); 

這將返回OBJ數據與11 但ID,我怎麼能檢索OBJ數據,在ID會像ARR數組?

所以我想要obj的屬性等於Id 11和21?

謝謝。

+0

所以它像一個或條件? Id == arr [0] || Id == arr [1]? – Taplar

回答

1

使用Array.indexOf()

var arr = ['11', '21'] 

obj = $.grep(obj, function (element, index) { 
    return arr.indexOf(element.Id + '') > -1;//the + '' is used since the array has string values 
    //or $.inArray(element.Id + '', arr) > -1 
}); 
+0

這個「> -1」沒有結果... – user2610146

+0

@ user2610146 http://jsfiddle.net/arunpjohny/dsparj8m/1/ –

0

您也可以使用JavaScript的自己的本地filter方法achieve the same result

var arr = obj.filter(function (el) { 
    return arr.map(Number).indexOf(el.Id) > -1; 
});