Выбор нескольких элементов из динамически генерируемого списка - Zend Framework - PullRequest
2 голосов
/ 16 ноября 2011

В настоящее время я занимаюсь разработкой программного обеспечения для медиа-галереи с использованием Zend Framework и пытаюсь выяснить, как лучше всего добавить несколько изображений в галерею.По сути, я хочу получить длинный список изображений из базы данных, разместить их на странице (возможно, на нескольких страницах с использованием jQuery), а затем позволить пользователю выбрать несколько изображений, а затем добавить их в галерею.Я изо всех сил пытаюсь найти лучшую практику, чтобы это произошло.

В настоящее время я борюсь с тем, как лучше всего создать форму.Использование Zend_Form кажется немного излишним, поскольку по сути это будет набор динамически создаваемых подформ (по одной для каждого изображения) и одна кнопка отправки.Я мог бы просто создать форму вручную с помощью HTML в скрипте представления (создавая форму, а затем перебирая изображения, каждый создавая новый флажок с идентификатором, совпадающим с идентификатором изображения, а затем позволяя jQuery форматировать его).

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

Спасибо, Дрю

1 Ответ

1 голос
/ 04 декабря 2011

Вы правы, говоря, что Zend Form будет слишком хлопотным делом. Я полагаю, вам нужно что-то вроде графического средства выбора, что-то вроде страницы с миниатюрами, а не полноразмерных изображений. jQuery сохранит идентификаторы, которые выберет пользователь, а затем отправит их в ваше приложение php с помощью запроса на публикацию ajax.

Сначала вам понадобится в вашем файле JS объект, в котором будут храниться значения, изначально пустые. Когда пользователь нажимает на миниатюру (которая имеет «id» в своем HTML-теге и имеет обработчик события click jQuery), вы визуально отмечаете его в пользовательском интерфейсе, добавляя выделенную толстую границу (для этого используйте css jQuery). Вы также добавляете id изображения, по которому щелкнули объект, собирающий идентификаторы (через attr jQuery), и, наконец, выполняете load () jQuery, оборачивая объект на ваш php-сервер, который будет извлекать идентификаторы с помощью __getParams () контроллера, сохранять их и предоставьте некоторое подтверждение, которое вы можете выбрать для отображения в div вместо средства выбора изображений.

Должно быть легко, но не стесняйтесь спрашивать код, если у вас возникли проблемы

...