|
|
Модератор форума: Yuri_G |
Сообщество uCoz Архивариус Решённые вопросы Скрипт автозаполнения краткого вида в каталоге файлов (помогите довести до ума) |
Скрипт автозаполнения краткого вида в каталоге файлов |
Был нужен скрипт автозаполнения кратного вида материала в модуле каталог файлов.
Взял скрипт транслита, удалил лишнее - работает, один нюанс: если участник ставил текст в поле полного вида мышкой, то поле автоматом не заполняется, ибо срабатывание идёт при вводе с клавиатуры (нужно хоть пробел в конце добавить). Вопрос: как сделать так, чтобы скрипт работал не только при вводе с клавы, но и при нажатии на "сохранить"? Ну и может его можно упросить как-то, чтоб был не таким корявым. В скрипте ограничение на 500 символов. Код <script> function translit(){ // Символ, на который будут заменяться все спецсимволы var space = '_'; // Берем значение из нужного поля var text = $('#message').val(); // Массив для транслитерации var transl = { } var result = ''; var curent_sim = ''; for(i=0; i < text.length; i++) { if (i==500) {break;} // Если символ найден в массиве то меняем его if(transl[text[i]] != undefined) { if(curent_sim != transl[text[i]] || curent_sim != space){ result += transl[text[i]]; curent_sim = transl[text[i]]; } } // Если нет, то оставляем так как есть else { result += text[i]; curent_sim = text[i]; } } result = TrimStr(result); // Выводим результат $('#brief').val(result); } function TrimStr(s) { s = s.replace(/^_/, ''); return s.replace(/-$/, ''); } // Выполняем транслитерацию при вводе текста в поле $(function(){ $('#message').keyup(function(){ translit(); return false; }); }); </script> Добавлено (23 Ноя 2016, 11:46:54) Код $(function(){ $('#ldF18').click(function(){ translit(); return false; }); }); Сообщение отредактировал zarim - Понедельник, 21 Ноя 2016, 16:58:08
|
| |||
| |||