Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции - JavaScript.docx
Скачиваний:
26
Добавлен:
23.08.2019
Размер:
401.56 Кб
Скачать

Свойство target

Свойство target определяет имя окна, в которое следует загружать результат обращения к CGI-скрипту. При этом всегда есть альтернативы: можно использовать значение этого свойства внутри JavaScript-программ для указания окна или фрейма, куда требуется загружать результат работы CGI-скрипта, а можно получить идентификатор окна или задействовать встроенный массивframes[0] и свойства окна opener, top и parent. Кроме того, для загрузки внешнего файла в некоторое окно или фрейм можно также применить метод window.open(). Все эти варианты будут продемонстрированы в разделе "Передача данных во фрейм".

Свойство encoding

Свойство encoding объекта Form (а также атрибут enctype контейнера FORM ) задает, каким образом данные из формы должны быть закодированы перед их отправкой на сервер. Возможные значения:

Значения свойства encoding объекта Form

Значение

Описание

application/x-www-form-urlencoded

Это значение по умолчанию. Означает, что в данных, передаваемых на сервер, пробелы заменяются на "+", а специальные символы заменяются на их 16-ричное ASCII значение, например, буква Щ заменяется на %D0%A9.

text/plain

Пробелы заменяются на "+", но специальные символы не кодируются (передаются как есть).

multipart/form-data

Никакие символы не кодируются (они передаются как есть). Данное значение необходимо указывать, если в форме имеются элементы отправки файлов:<INPUT TYPE=file>.

Коллекция elements[]

При генерации встроенного в документ объекта Form браузер создает и связанный с ним массив (коллекцию ) полей формы elements[]. Обычно к полям обращаются по имени, но можно обращаться и по индексу массива полей формы:

<FORM NAME=f>

<INPUT NAME=e SIZE=40>

<BR><INPUT TYPE=button VALUE="Ввести текст по имени элемента"

onClick="document.f.e.value='Текст введен по имени элемента';">

<BR><INPUT TYPE=button VALUE="Ввести текст по индексу элемента"

onClick="document.f.elements[0].value='Текст введен по индексу элемента';">

<BR><INPUT TYPE=reset VALUE="Очистить">

</FORM>

Индексирование полей в массиве начинается с нуля. Общее число полей в форме f доступно двумя способами: как свойство массива document.f.elements.length и как свойство объекта формы: document.f.length.

Методы объекта Form Метод submit()

Метод submit() позволяет проинициировать передачу введенных в форму данных на сервер:

<FORM NAME=f ACTION="http://www.intuit.ru/rating_students/">

Ваше имя пользователя на intuit:<INPUT NAME=query>

</FORM>

<A HREF="javascript:document.f.submit();">Посмотреть рейтинг</A>

Как видите, кнопки отправки ( submit ) у формы нет, но нажав на ссылку, мы выполняем отправку данных на сервер. Обычно при такой "скрытой" отправке данных на сервер браузеры, в целях безопасности, запрашивают подтверждение, действительно ли пользователь желает отправить данные. Отправка данных путем вызова метода submit() имеет отличия от нажатия пользователем кнопки INPUT типа TYPE=submit ; их мы рассмотрим в конце лекции.