Показать сообщение отдельно
  #42 (permalink)  
Старый 28.01.2019, 11:07
Интересующийся
Отправить личное сообщение для Alexko64 Посмотреть профиль Найти все сообщения от Alexko64
 
Регистрация: 17.04.2018
Сообщений: 26

Сообщение от рони Посмотреть сообщение
Alexko64,
function escapeRegExp(string){
    return string.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
}

function fnSearch(arr, pattern) {
    return arr.filter(function(product) {
             var text = $("<div/>", {html : product.html}).text().toLowerCase();
        return pattern
            .trim()
            .toLowerCase()
            .split(/\s+/)
            .every(function(p) {
                p = escapeRegExp(p);
                p = new RegExp("(^|\\s)"  + p, "i");
                return p.test(text)
            });
    });
}

Кстати, вариант с отрезанием хтмл тегов тормозит на большом количестве товаров, вот тут пример
http://mobidor.zzz.com.ua/test2.php

А вариант без обрезания хтмл тегов работает как пуля с тем-же количеством товаров
http://mobidor.zzz.com.ua/test.php
но поиск не коректный, из за тегов
Ответить с цитированием