Download the PHP package it-for-free/jquery-useful-tools without Composer
On this page you can find all versions of the php package it-for-free/jquery-useful-tools. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download it-for-free/jquery-useful-tools
More information about it-for-free/jquery-useful-tools
Files in it-for-free/jquery-useful-tools
Package jquery-useful-tools
Short Description nested form filed groups adder
License MIT
Homepage http://fkn.ktu10.com/?q=iff-itforfree
Informations about the package jquery-useful-tools
JUTs (jquery useful tools)
Набор JQuery-плагинов в том числе для работы со сложными формами -- дублирования групп полей для вложенных сущностей (например в случае, когда сущости относятся как "один ко многим")
Использование (Usage)
Некоторые плагины зависят только от jquery, другие ещё и от jquery-ui, в общем случае можно сразу подключать и то и то и сам JUTs в таком порядке:
Основные плагины JUTs
Далее описаны наиболее сложные (крупные) плагины, которые в своей работе могут использовать сразу несколько более простых плагинов JUTs. Кратно об основных:
$.fromFiledsGroupAdderFromHiddenTemplate()
копирует в родительский контейнер (на который и вешается событие) из скрытого шаблона$.fn.parentInParentContainerDublicator()
копирует родитеский элемент для данной кнопки (ссылки), в родительский элемент ещё более высокого уровня.
Прочие плагины JUTs
-
Плагины
getAttrFragment
иgetNameFragment
Позволяют извлекать фрагмент значения атрибута вида:по номеру (парсят квадратные скобки). Полезны напр. для работы с атрибутом name сложных форм.
isInputsEmpty()
-- порверит пусты ли все поля-потомки данного элемента (можно проверять находится ли фрома в состоянии по-умолчанию)getInputType()
-- выяснит тип тега/инпута
Сброка и другая работа с npm
Сборка:
Отладочная сборка
@TODO
Возможные улучшения (идеи)
-
parentInParentContainerDublicator
мог бы не заменять специальную строку в прототипе с прследующей заменой значения атрибута значением из прототипа, а вообще не использовать прототип (шаблон значения атрибута в дата-атрибуте), просто указывая какой именно по порядку сегомент имени надо заменить на порядковый номер. (по аналогии с уже внедренной идеей, замены оставшихся спец, строк в шаблоне значения атрибута на аналогические реальные значения сегментам, но там каждый сегмент проверяется специально на то не является ли он подтрокой, что сложнее в том числе для использования). -
Может можно отказаться от глобальных массивов регистраций событий и просто использовать проверку не привязано ли уже событие (так или иначе)
- Из
isInputsEmpty
можно (и нужно)) выделить отдельный плагин для проверки на путстоту конткретного инпута