и любимых
автомобилей и затем выбрать в списке ту модель, которой в настоящий момент
посетитель владеет. Для целей маркетинговых исследований было бы полезно со-
хранять список предпочитаемых моделей для каждого посетителя сайта, дабы в
будущем предлагать ему приобрести что-нибудь из введенного ранее списка.
Аналогично, в предыдущем примере имело бы смысл сохранять весь список чле-
нов семьи для каждого посетителя.
Для того чтобы получить значения как выбранных, так и невыбранных эле-
ментов списка выбора, предоставьте возможность браузеру при помощи своей
стандартной функциональности добавить список выбранных элементов к резуль-
татам формы. Затем при помощи JavaScript-функции сохраните значения всех
элементов списка выбора в скрытом поле до того, как браузер отправит результа-
ты формы Web-серверу. (Несмотря на то что браузер не отображает на форме
скрытые поля, после щелчка на кнопке отправки он все равно пересылает имена
и значения таких полей Web-серверу вместе с остальными данными формы.)
Глава 3. HTML-формы 153
ПРАКТИКУМ
Пусть, например, требуется, чтобы Web-браузер отправлял Web-серверу все имена
членов семьи, добавленные посетителем в список выбора из предыдущего приме-
ра. Для этого вы должны вставить следующий JavaScript-код между начальным и
конечным дескрипторами тела () HTML-страницы:
Функция prepFromResuito в приведенном примере предполагает, что описа-
ние функции включает определение следующего скрытого поля, в которое она мо-
жет поместить значения элементов списка выбора, объединенных в одну строку:
Кроме того, функция prepFromResuito предполагает, что дескриптор