method
Свойство method определяет метод доступа к ресурсам HTTP-сервера из программы-браузера. В зависимости от того, как автор HTML-страницы собирается получать и обрабатывать данные из формы, он может выбрать тот или иной метод доступа. На практике чаще всего используются методы GET и POST.
JavaScript-программа может изменить значение этого свойства. В предыдущем разделе (action) метод доступа в форме был указан явно. Теперь мы его переопределим в момент исполнения программы:
<FORM NAME=m ACTION="javascript:window.alert('Мы используем JavaScript-код в качестве an URL');void(0);">
<SCRIPT>
document.write("<FONT COLOR=navy>По умолчанию установлен метод</FONT>"+document.m.method+".");
</SCRIPT>
<INPUT TYPE=button onClick="window.document.main.document.m.method='post';" VALUE="Метод POST">
<INPUT TYPE=button onClick="window.document.main.document.m.method='get';" VALUE="Метод GET">
<INPUT TYPE=submit VALUE="JavaScript в ACTION">
</FORM>
По умолчанию установлен метод GET.
В данном примере стоит обратить внимание на два момента:
Прежде чем открывать окно предупреждения, следует нажать кнопку "Метод POST". Если этого не сделать, то появится сообщение об ошибке JavaScript. Здесь все выглядит достаточно логично. Формирование URL происходит при генерации события submit, а вызов скрипта — после того, как событие сгенерировано. Поэтому вставить переопределение метода в обработчик события нельзя, так как к этому моменту будет уже сгенерирован URL, который, в свою очередь, будет JavaScript-программой с символом "?" на конце. Переопределение метода должно быть выполнено раньше, чем произойдет событие submit.
В тело документа через контейнер SCRIPT встроен JavaScript-код, который сообщает метод доступа, установленный в форме по умолчанию. Этот контейнер расположен сразу за контейнером FORM. Ставить его перед контейнером FORM нельзя, так как в момент получения интерпретатором управления объект FORM не будет создан, и, следовательно, работать с его свойствами не представляется возможным.
Никаких других особенностей свойство method не имеет. В данном свойстве можно указать и другие методы доступа, отличные от GET и POST, но это требует дополнительной настройки сервера.