Обработка (возможно разбитого на страницы) списка элементов, например, переключение значения на основе одного клика? - PullRequest
2 голосов
/ 20 апреля 2009

Предположим, что мы работаем с формами HTML и данными GET / POST, независимо от языка бэкэнда. Аскер наиболее свободно владеет PHP и Python.

Пример: Отслеживание посещаемости событий, есть HTML-страница для администрации событий, которая перечисляет всех доступных людей. Рядом с каждым именем есть столбец с графикой / виджетом, представляющим их посещаемость на мероприятии. Какой лучший способ обновить статус Посещаемости для Человека в списке?

Один метод, о котором я первоначально думал, состоял в том, чтобы просто использовать флажок для посещаемости. Однако непроверенные ящики не отправляются вместе с данными формы. Базовая логика должна была бы переключить статус присутствия на ЛОЖЬ / ВЫКЛ / Не посещать для любой идентификатор личности, не отправленный вместе с формой. Это ломается, если список разбит на страницы!

Второй метод, о котором я подумал, - это использование кнопки / рядом с каждым именем. Это уместно, что каждый кнопка будет кнопка отправки? Как в: Разрешено ли, чтобы элемент формы имел несколько кнопок отправки? Или каждый должен Кнопка / Персона будет завернута в собственный элемент формы?

Ответы [ 2 ]

1 голос
/ 20 апреля 2009

Довольно простое исправление состоит в том, чтобы использовать метод флажка, но добавить пару скрытых элементов формы, которые хранят значения для минимальных / максимальных значений, которые будут отправлены. Таким образом, ваша логика может обрабатывать «пропущенные» флажки как «выключенные», не нарушая всех, кто отсутствует на странице.

Я не рекомендую иметь несколько отправляемых элементов в одной форме. Если вы хотите пойти в другом направлении, вы можете посмотреть на ссылку (текстовую / графическую / кнопку) в каждой строке, которая использует ajax для переключения посещаемости для пользователя этой строки. Таким образом, пользователь никогда не должен явно «отправлять» ничего. Когда они переключаются в интерфейсе, обновления происходят в фоновом режиме.

0 голосов
/ 20 апреля 2009

Как и любая другая кнопка «Редактировать запись» или «Удалить эту строку», переключатели могут представлять собой кнопку «Отправить» / графический элемент с уникальным идентификатором записи (или в любом случае) для обновления / переключения / удаления в value атрибут.

Обработчику формы потребуется только проверить value кнопки отправки (для этого может потребоваться уникальный атрибут name).

Пожалуйста, исправьте меня, если я ошибаюсь, но я считаю, что это нормально и действует по крайней мере в HTML4 и XHTML1.

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