У меня есть массив устройств, каждое устройство имеет свой уникальный идентификатор, я хочу сделать searchBox, который будет фильтровать по этому идентификатору. Пока что мне это удалось частично, поэтому он проверяет, совпадает ли символ входного символа с идентификатором устройства. Однако не так, как хотелось бы, пример ниже:
id = 35678; input.value = 5
не должно работать, так как первый символ - 3
id = 35679; input.value = 35
должно работать, так как первый символ такой же
Проблема в функции match / include, но на самом деле не знаю, как заменить ее, чтобы она заработала
input_box.addEventListener('keyup', function(){
var search_result = this.value;
var device = document.querySelectorAll('[device_id]')
var array_of_devices = [];
for (var i = 0; i < device.length; i++) {
array_of_devices.push(device[i].getAttribute('device_id'))
}
array_of_devices.forEach(el => {
if (!el.match(search_result)) {
var not_matched = document.querySelector(`[device_id="${el}"]`)
not_matched.style.display = "none"
} else {
var matched = document.querySelector(`[device_id="${el}"]`)
matched.style.display = "block"
}
})
})