Шаблоны / стратегии для создания сложной вложенной формы AJAX / jQuery - PullRequest
1 голос
/ 25 октября 2010

Нам нужно построить довольно сложную форму, которая позволит создавать / обновлять несколько экземпляров объекта A, где объект A может иметь несколько экземпляров объекта B.

Оба типа объектов довольно сложны (много полей и выпадающих списков), но только некоторые из этих полей необходимо заполнить при создании. Требуется, чтобы можно было быстро создавать множество элементов и разрешить заполнение других деталей позже.

Любые советы по шаблонам javascript / jquery, которые могут быть полезны для обработки / хранения всех данных сущностей, были бы полезны. Кроме того, обычно я делал бы что-то подобное, копируя новые разделы формы из скрытых экземпляров на странице, но задавался вопросом, есть ли лучший, более объектно-ориентированный способ сделать все это в JavaScript. Я сейчас нахожусь в процессе чтения, но подумал, что я опубликую здесь, если кто-то может быстро направить меня в нужном направлении, чтобы сэкономить время.

Большое спасибо.

Ответы [ 2 ]

1 голос
/ 25 октября 2010

Я использую рекурсивную функцию для заполнения элементов формы ... т.е.

Ajax-вызов используется для заполнения div. Функция, которая генерирует ответ, перебирает, например, экземпляры сущности A и создает идентифицируемые блоки div, и для каждого экземпляра A вызывает себя, чтобы перебрать дочерние записи. После завершения всей рекурсии полученный HTML-код загружается в форму div.

Создает ли пользователь новые объекты в интерфейсе? У вас есть несколько вариантов для этого. Я бы, вероятно, использовал Ajax, чтобы инициировать создание новой сущности, и добавить к форме div новую сущность. Каждая сущность будет иметь надлежащие теги ID и использовать события изменения для отправки вызовов Ajax и обновления на лету.

1 голос
/ 25 октября 2010

Я бы настоятельно рекомендовал шаблоны jQuery , или вообще какое-то решение для шаблонов JavaScript.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...