Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » вопросы по javascript

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90

Открыть новую тему     Написать ответ в эту тему

D1D1D1D

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii
Это было бы здорово. Можно пример, когда пользователь вводит нечто по шаблону, а это обрабатывается далее на основе регулярки?

Всего записей: 1032 | Зарегистр. 05-04-2010 | Отправлено: 12:57 20-07-2021
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
D1D1D1D
как то так, к примеру
https://jsfiddle.net/7tdchoz8/
но вы учтите, что цифры это граница слова.
 
 
Нужно только еще экранирование от регулярки выражения для поиска.

Всего записей: 11566 | Зарегистр. 20-09-2014 | Отправлено: 10:51 21-07-2021 | Исправлено: Mavrikii, 13:03 21-07-2021
D1D1D1D

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii
А как применять код, можно подсказку? Вставлял его в функцию gCalculateFilterExpression() и в fix() для замен введенного в input, но не срабатывает

Всего записей: 1032 | Зарегистр. 05-04-2010 | Отправлено: 16:09 21-07-2021
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
D1D1D1D

Цитата:
и в fix()

при чем тут оно?
это пример для фильтра, не для копирования и вставки, очевидно же.
и цикл там не нужен, он просто показывает какие слова выбираются регуляркой. для фильтра достаточно хотя бы одного совпадения.

Всего записей: 11566 | Зарегистр. 20-09-2014 | Отправлено: 00:47 22-07-2021
D1D1D1D

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii
Так надо запускать?

Код:
 
        headerFilter: {  
            dataSource: function(data) {  
                data.dataSource.postProcess = function(results) {  
 
 
var text = " слово слева\nслава", search = "сл*".replace(/\*/g, '[\\u0400-\\u04FF\\w]+?');
 
var regex = new RegExp("(^|\\s|[^\\u0400-\\u04FF]|\\b)(" + search + ")(?=\\s|[^\\u0400-\\u04FF]|\\b|$)", 'g');
 
var out = [];
 
do {
    m = regex.exec(text);
    if (m) out.push(m[2]);
} while (m);
 
alert(out);
 
 
 
 
                };  
            }  
        }  

 
И не могли бы Вы подсказать — как применить следующий код для общего поиска (который внизу-справа), чтобы в нем тоже работала нечувствительность к поиску буквы «ё»? —
 

Код:
        calculateFilterExpression: function(value, selectedFilterOperation, target){
        var getter = function(data) {
            var data  = data['aaa'].normalize('NFD').replace(/\u0451/g,"\u0435"); //ё—е
            return data;
        };
        value = value.normalize('NFD').replace(/\u0451/g,"\u0435"); //ё—е
        return [getter, selectedFilterOperation || "contains", value];
        }

 
Пробовал с удалением «['aaa']» и « || "contains"» — не пошло.

Всего записей: 1032 | Зарегистр. 05-04-2010 | Отправлено: 02:38 23-07-2021 | Исправлено: D1D1D1D, 02:39 23-07-2021
D1D1D1D

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Почему-то не работает поиск прописных букв — i?Я

Всего записей: 1032 | Зарегистр. 05-04-2010 | Отправлено: 18:54 23-07-2021
D1D1D1D

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ещё вот странное дело: при поиске в закрепленной внизу форме — не различается буква «и» и «й» в сочетаниях с другими буквами, например: «ной». Если удаляю следующий код — начинает работать

Код:
        filterOperations: ['contains','='],
        calculateFilterExpression: function (value, selectedFilterOperations, target) {  
            return gCalculateFilterExpression (value, selectedFilterOperations, target, this);
        }


Всего записей: 1032 | Зарегистр. 05-04-2010 | Отправлено: 03:57 24-07-2021 | Исправлено: D1D1D1D, 16:43 24-07-2021
D1D1D1D

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
del
 

Всего записей: 1032 | Зарегистр. 05-04-2010 | Отправлено: 21:24 31-07-2021 | Исправлено: D1D1D1D, 21:26 31-07-2021
vs6262



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
https://breil-it-service.eu/
 
ну ка зацените плиз сейчас в Internet Explorer 11 насчёт всплывающего раньше поднизом warning ???
 
Спасибо
 
Добавлено:
а сейчас вообще warning даже не промелькивает)))
 
 
Добавлено:
за 0,01 € на PayPal как другу могу произвести расьяснение как я этого добился )))
 
Добавлено:
ПС: Шутка )))

Всего записей: 2130 | Зарегистр. 25-02-2013 | Отправлено: 01:52 03-08-2021 | Исправлено: vs6262, 03:29 03-08-2021
vs6262



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
https://a-breil.de/A--Su/ - please Test in IE 11 and other Browsers
 
https://anonfiles.com/h570h4Acu3/A-Su_7z   -  скачать решение
 
вот оно моё готовое решение насчёт не появления поднизом в IE 11 Warning

Всего записей: 2130 | Зарегистр. 25-02-2013 | Отправлено: 04:15 03-08-2021 | Исправлено: vs6262, 04:31 03-08-2021
D1D1D1D

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
как то так, к примеру
https://jsfiddle.net/7tdchoz8/

Всё-таки затрудняюсь применить этот код. Он должен быть в таком формате? —

Цитата:
 
        headerFilter: {  
            dataSource: function(data) {  
                data.dataSource.postProcess = function(results) {  
 
 
 
var text = " слово слева\nслава", search = "сл*".replace(/\*/g, '[\\u0400-\\u04FF\\w]+?');
 
var regex = new RegExp("(^|\\s|[^\\u0400-\\u04FF]|\\b)(" + search + ")(?=\\s|[^\\u0400-\\u04FF]|\\b|$)", 'g');
 
var out = [];
 
do {
    m = regex.exec(text);
    if (m) out.push(m[2]);
} while (m);
 
alert(out);
 
 
 
                };  
            }  
        }  
 


Всего записей: 1032 | Зарегистр. 05-04-2010 | Отправлено: 08:31 13-08-2021
Weinaum



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
приветствую, есть проблемка.
Имеется инпут типа number, в который могут быть введены пользователем как целые, так и десятичные числа. При этом некоторые пользователи могут вводить с точкой, а некоторые с запятой, например так - "40.50" , или так - "40,50".  
Введенное число я получаю jquery методом val() - вообще все в порядке, за одним исключением.
Если пользователь вводит какое то значение с точкой, после которой нет десятичного значения (например, исправлял "40.50" на "40" и оставил "40.") - то val() вернет пустую строку - как я понимаю, введенное таким образом значение воспринимается как invalid data.
Можно как то обмануть, чтобы val() вернул "40.00" или "40.0"? Без изменения типа инпута?

Всего записей: 2056 | Зарегистр. 18-06-2006 | Отправлено: 10:09 14-09-2021
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Weinaum

Цитата:
то val() вернет пустую строку - как я понимаю, введенное таким образом значение воспринимается как invalid data.

не должен. скорее у вас что то не так в коде обработки, должно вернуться число без точки, целое.

Всего записей: 11566 | Зарегистр. 20-09-2014 | Отправлено: 17:53 14-09-2021
Weinaum



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii
 
но вот возвращает пустую строку -  
https://codepen.io/lagudal/pen/KKqqQgZ
причем если в конце будет не точка, а запятая, то вернет целое число.
Если number заменить на text, то возвращает как есть - число с точкой. В принципе, с ним можно работать, но тогда туда можно будет вводить какие угодно символы, и их тоже надо будет обрабатывать. В number же посторонние символы просто не вводятся, и это то что требуется.

Всего записей: 2056 | Зарегистр. 18-06-2006 | Отправлено: 10:26 15-09-2021
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Weinaum

Цитата:
то val() вернет пустую строку

неправда.
   
 

Цитата:
причем если в конце будет не точка, а запятая, то вернет целое число.

зависит от региональных настроек систему. я запятую, к примеру, вообще не могу ввести.

Всего записей: 11566 | Зарегистр. 20-09-2014 | Отправлено: 17:35 15-09-2021 | Исправлено: Mavrikii, 21:01 15-09-2021
Weinaum



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii
ах вот оно в чем дело. У меня разное поведение в хроме и firefox -в ff возвращет целое, в хроме - пустую строку. И ff позволяет еще вводить и буквы...

Всего записей: 2056 | Зарегистр. 18-06-2006 | Отправлено: 07:59 16-09-2021
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90

Компьютерный форум Ru.Board » Интернет » Web-программирование » вопросы по javascript


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.Board
© Ru.Board 2000-2020

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru