Я пытаюсь найти текст в таблице с помощью angular. Я могу искать текст в таблице. Но мой поиск работает, когда я нажимаю ввод или «кнопку поиска». Например, когда я пишу «Активно», он не показывает результат, но когда я нажмите ввод или нажмите кнопку поиска, чтобы отобразить вывод. Можем ли мы сделать аналогичный поиск, например, автозаполнение. Например, когда я нажимаю «а», отображаются все элементы, которые начинаются с «а». Затем, если пользователь пишет «ac», затем показывает «ac» значение .. такое же, как это. когда пользователь пишет «активный», он показывает строки, которые имеют «активный», без использования кнопки поиска или ввода. можем ли мы добавить фильтр, чтобы он работал правильно?
вот мой код
$scope.searchInvoices = function(evt, queryval) {
$scope.haveNorecordFound = true;
if (typeof queryval != "undefined" && queryval.length === 0 || evt.keyCode === 13 || evt.type === 'click') {
if (typeof queryval == "undefined" || queryval.length === 0) {
console.log("if===")
isfilterOccured = false;
$scope.tasklist_records = $scope.total_tasklist_records;
$scope.totalNumberOfrecord = $scope.tasklist_records.length + " records found."
} else {
console.log("esle===")
var recordset = $scope.serachObject;
results = [];
var recordsetLength = recordset.length;
var searchVal = queryval.toLowerCase();
var i, j;
for (i = 0; i < recordsetLength; i++) {
var record = recordset[i].columns;
for (j = 0; j < record.length; j++) {
if (record[j].value != null) {
var invoice = record[j].value.toLowerCase();
if (invoice.indexOf(searchVal) >= 0) {
results.push(recordset[i]);
}
}
}
}
var nameOrPathValues = results.map(function(o) {
var result = {};
o.columns.forEach(function(c) {
result[c.fieldNameOrPath] = c.value;
});
return result;
});
console.log("serach");
console.log(nameOrPathValues);
var objectarray = nameOrPathValues.map(function(o) {
var result = {};
collectNameOrPath.forEach(function(name) {
result[name] = o[name];
});
return result;
});
isfilterOccured = true;
$scope.tasklist_records = objectarray;
if ($scope.tasklist_records.length == 0) {
$scope.haveNorecordFound = false;
} else {
$scope.totalNumberOfrecord = $scope.tasklist_records.length + " records found."
}
}
}
};
data-ng-keyup
вместоng-keyup
- person Vineet   schedule 03.07.2015