Сеть UI: динамические веб-формы

рассмотрите следующую структуру данных:

subject (stdClass)
    topic (stdClass)
        units (int)
        title (varchar 50)
        description (varchar 255)
        start_time (time)
        end_time (time)
    teacher (stdClass)
        first_name (varchar 50)
        last_name (varchar 50)
    students (stdClass[])
        1 (stdClass)
            first_name (varchar 50)
            last_name (varchar 50)
        2 (stdClass)
            first_name (varchar 50)
            last_name (varchar 50)
        3 (stdClass)
            first_name (varchar 50)
            last_name (varchar 50)
    proctor (stdClass)
        first_name (varchar 50)
        last_name (varchar 50)

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

Сценарий:

  • Пользователь должен смочь обеспечить, данные должны были заполнить "подчиненный" объект в одной форме. Значение его не будет перенаправлено к другим страницам (как мастер) вместо этого, подчиненными формами на студента является сгенерированный JavaScript.
  • Пользователь должен смочь изменить данные в "подчиненном" объекте по требованию.
  • Могут быть многие студенты или ни один.
  • Проверка на подобъект требуется.

Таким образом, как я должен представить это использование веб-формы?

5
задан Christian Noel 19 February 2010 в 01:28
поделиться

2 ответа

в соответствии с рекомендациями по удобству использования поля должны быть сгруппированы в элемент fieldset на основе их темы / например имя / фамилия вместе и т. д.

из-за большого объема данных следует использовать некоторый интерфейс Javascript для поэтапного отображения страницы (формы можно загружать на одной странице, но JS будет служить для отображения и скрытия соответствующих разделов / наборов полей) . submit затем отправит все данные сразу или, в качестве альтернативы, можно будет предъявить иск к AJAX после обновления каждого раздела ...

Лучшее в наборах полей - это то, что они также могут быть сгруппированы и включены друг в друга.

1
ответ дан 15 December 2019 в 06:24
поделиться

тег < pre > можно использовать для предотвращения свертывания нескольких пробелов и разрывов линий. Также можно использовать & nbsp; для типичного пространства (не разрываемое пространство) и < br/> (или < br > ) для разрывов строк.

Но не делайте < br > < br > < br > < br > просто используйте тег < p > и настройте поля с помощью CSS.

<p style="margin-top: 20px;">Some copy...</p>

Хотя, вы должны определить стили глобально, а не в линию, как я сделал в этом примере.

При выводе строк из PHP можно использовать "\n "для новой строки и "\t" для вкладки.

<?php echo "This is one line\nThis is another line"; ?>

Хотя флаги, подобные\n или\t, работают только в двойных кавычках ("), но не в одиночных вуотах (').

-121--1342725-

Журнал F # .NET опубликовал две статьи об этом:

-121--1180224-

Я сталкиваюсь с аналогичной проблемой и с одним из моих проектов, и с тем, как заполнить огромный объем информации невнятным образом, сохраняя состояние при редактировании.

Технологии уже существуют, чтобы сделать это довольно хорошо, а именно ajax и json. Мой проект построен с PHP, поэтому моя идея состоит в создании представления, которое отображает все формы ввода данных, но сохраняет данные постепенно, отправляя заполненные поля в скрипт PHP с ajax, который затем сохраняет/обновляет объект.

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

Его можно сделать это очень модульный дизайн, реализуя, например, запись один раз поля, один раз сохраненные возможность быть отредактированы.

Это действительно очень интересная тема, с которой многие сайты, кажется, борются. Пожалуйста, скажите мне, если бы я схватил не тот конец палки здесь и опубликовал ответ, который не имеет значения/полезен

Чтобы уменьшить дубликат кода и действительно сделать этот элегантный и управляемый я бы реализовал его с шаблоном дизайна MVC. Иметь представление отправлять данные каждый раз, когда пользователь перестает вводить данные в поле и оно не будет пустым. Затем попросите контроллер проверить, требуется ли обновление поля, и отправить правильные подтверждения обратно в ракурс. Модель также будет играть свою роль, поскольку вы, несомненно, будете сохранять данные в базе данных.

Вид, по существу, будет представлять собой модульный сценарий ajax, он имеет входы и контролирует их на предмет изменений, как только достаточно изменений (чтобы гарантировать частичное сохранение), ajax отправляет данные на контроллер и сворачивает соответствующий раздел, чтобы показать, что он был завершен. Аналогичным образом, если вы вернуться к странице и контроллер видит, что есть некоторые данные в модели для этих полей он отправляет его в ajax представление, которое затем заполняет и сворачивает предварительно заполненные разделы =) Довольно аккуратно я думаю.

Редактирование: исправление опечаток, добавлен комментарий MVC

2
ответ дан 15 December 2019 в 06:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: