I have this JSON that I am displaying in a kendo template. The format is as follows:
[
{
"Pending": [
{"FieldA": "SomeValue", "FieldB", "SomeValue"},
{"FieldA": "SomeValue", "FieldB", "SomeValue"},
{"FieldA": "SomeValue", "FieldB", "SomeValue"},
{"FieldA": "SomeValue", "FieldB", "SomeValue"},
{"FieldA": "SomeValue", "FieldB", "SomeValue"}
],
"Submitted": [
{"FieldA": "SomeValue", "FieldB", "SomeValue"},
{"FieldA": "SomeValue", "FieldB", "SomeValue"},
{"FieldA": "SomeValue", "FieldB", "SomeValue"},
{"FieldA": "SomeValue", "FieldB", "SomeValue"},
{"FieldA": "SomeValue", "FieldB", "SomeValue"}
]
}
]
It always return an array with 1 object that has 2 fields: Pending and Submitted. Now each field contains an array of objects shown above.
What I am trying to do is to filter Pending and Submitted thru Field A but its always nothing.
Here is my code:
var filtersArray = [
{
field: "Pending",
operator: function(itemValue, value) {
return itemValue && itemValue.find(function (item) {
return item.FieldA == value;
});
},
value: "searchTextHere"
},
{
field: "Submitted",
operator: function(itemValue, value) {
return itemValue && itemValue.find(function (item) {
return item.FieldA == value;
});
},
value: "searchTextHere"
}
];
var filter = {
logic: "or",
filters: filtersArray
};
formDataSource.filter(filter);