Читайте также:
|
|
Если рассматривать программирование на JavaScript в исторической перспективе, то первыми объектами, для которых были разработаны методы и свойства, стали поля форм. Обычно контейнер FORM и поля форм именованы:
<FORM NAME=f_name METHOD=get ACTION="javascript:void(0);"><INPUT NAME=i_name SIZE=30 MAXLENGTH=30></FORM>Поэтому в программах на JavaScript к ним обращаются по имени:
window.document.f_name.i_name.value="Текстовое поле";Того же эффекта можно достичь, используя массив форм загруженного документа:
window.document.forms[0].elements[0].value="Текстовое поле";В данном примере не только к форме, но и к полю формы мы обращаемся как к элементу массива.
Рассмотрим подробнее объект Form, который соответствует контейнеру FORM.
Свойства | Методы | События |
|
|
|
Сами по себе методы, свойства и события объекта Form используются нечасто. Их переопределение обычно связано с реакцией на изменения значений полей формы.
Action
Свойство action отвечает за вызов скрипта (CGI-скрипта). В нем указывается его (скрипта) URL. Но там, где можно указать URL, можно указать и его схему javascript:
<FORM METHOD=post ACTION="javascript:window.alert('We use JavaScript-code as an URL'); void(0);"><INPUT TYPE=submit VALUE="Продемонстрировать JavaScript в action"></FORM>Обратите внимание на тот факт, что в контейнере FORM указан атрибут METHOD. В данном случае это сделано для того, чтобы к URL, заданному в action, не дописывался символ "?". Дело в том, что методом доступа по умолчанию является метод GET. В этом методе при обращении к ресурсу из формы создается элемент URL под названием search. Этот элемент предваряется символом "?", который дописывается к URL скрипта, а в нашем случае, к JavaScript-коду.
Target
Свойство target определяет имя окна, в которое следует загружать результат обращения к CGI-скрипту. Применение значения этого свойства внутри JavaScript-программ не оправдано, так как всегда можно получить идентификатор окна или задействовать встроенный массив frames[0] и свойства окна opener, top, parent и т.п. Для загрузки внешнего файла в некоторое окно всегда можно применить метод window.open(). Но тем не менее использовать это свойство можно:
В примере организован цикл перебора имен фреймов. Если имя совпадает с указанным именем, то фрейм считается выбранным. Здесь нужно сделать следующее замечание: при работе с Internet Explorer обращения к фреймам по индексу следует избегать.
elements[]
При генерации встроенного в документ объекта Form браузер создает и связанный с ним массив полей формы. Обычно к полям обращаются по имени, но можно обращаться и по индексу массива полей формы:
<FORM NAME=fe><INPUT NAME=fe1 SIZE=30 MAXLENGTH=30><INPUT TYPE=button VALUE="Ввести текст по имени" onClick="document.fe.fe1.value='Ввести текст по имени';"><INPUT TYPE=button VALUE="Ввести текст по индексу" onClick="document.fe.elements[0].value='Ввести текст по индексу';"><INPUT TYPE=reset VALUE="Очистить"></FORM>Как видно из этого примера, индексирование полей в массиве начинается с цифры "0". Общее число полей в форме доступно как результат обращения
Дата добавления: 2015-07-25; просмотров: 72 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Управление окнами | | | Encoding |