|
[App.Vue]
load: function () {
this.$refs.grid.$el.addEventListener("keyup", (args) => {
if (
args.target.getAttribute("id") === "toolSearch" &&
args.key === "Enter"
) {
debugger;
let gridObj = this.$refs.grid.$el.ej2_instances[0];
var regex = /^(([012]\d)|3[01])\/((0\d)|(1[012]))\/\d{4}$/; // check the search value is date format
let input = args.target;
if (regex.test(input.value)) {
debugger;
var count = 0;
var predicates;
var dateSplit = input.value.split("/");
var dateVal = new Date(
parseInt(dateSplit[2], 10),
parseInt(dateSplit[0], 10) - 1,
parseInt(dateSplit[1], 10)
);
while (count < gridObj.columns.length) {
var col = gridObj.columns[count];
if (col.type === "date") {
predicates =
predicates === undefined
? new Predicate(col.field, "contains", dateVal)
: predicates.or(col.field, "contains", dateVal);
}
count++;
}
new DataManager({ json: gridObj.dataSource })
.executeQuery(new Query().where(predicates))
.then((e) => {
gridObj.dataSource = e.result;
});
} else if (input.value === "") {
if (gridObj.searchSettings.key === "") {
var data = gridData;
gridObj.dataSource = DataUtil.parse.parseJson(data);
} else {
gridObj.search("");
}
} else {
gridObj.search(input.value);
}
}
});
},
|