1.3 Способ 1: URL-схема «JavaScript:»

Схема URL (Uniform Resource Locator) — это один из основных элементов Web-технологии. Каждый информационный ресурс в Web имеет свой уникальный URL. URL указывают в атрибуте HREF контейнера A, в атрибуте SRC контейнера IMG, в атрибуте ACTION контейнера FORM и т.п. Все URL подразделяются на схемы доступа, которые зависят от протокола доступа к ресурсу, например, для доступа к FTP-архиву применяется схема ftp, для доступа к Gopher-архиву — схема gopher, для отправки электронной почты — схема mailto. Тип схемы определяется по первому компоненту URL, например:

http://intuit.ru/directory/page.html

В данном случае URL начинается с http — это и есть задание схемы доступа (схема http ).

Основной задачей языка программирования гипертекстовой системы является программирование гипертекстовых переходов. Это означает, что при выборе той или иной гипертекстовой ссылки вызывается программа реализации гипертекстового перехода. В Web-технологии стандартной программой, вызываемой при гипертекстовом переходе, является программа загрузки страницы (т.е. при клике по ссылке загружается страница с указанным URL). JavaScript позволяет поменять стандартную программу на программу пользователя. Для того, чтобы отличить стандартный переход по протоколу HTTP от перехода, программируемого на JavaScript, разработчики языка ввели новую схему URL — JavaScript:

<A HREF="JavaScript:код_программы">...</A>
<FORM ACTION="JavaScript:код_программы" ...> ... </FORM>

В данном случае текст » код_программы » обозначает программу-обработчик на JavaScript, которая вызывается при выборе гипертекстовой ссылки в первом случае и при отправке данных формы (нажатии кнопки Submit) — во втором. Например, при нажатии на гипертекстовую ссылку » Кликни здесь » можно получить окно предупреждения:

<A HREF="JavaScript:alert('Внимание!!!');">Кликни здесь</A>
Окно предупреждения
Рис. 1.1. Окно предупреждения

А при нажатии на кнопку типа submit в форме можно заполнить текстовое поле этой же формы:

<FORM METHOD=post NAME="form"
   ACTION="JavaScript:form.e.value='Нажали кнопку: Заполнить';void(0);"> 
 <INPUT TYPE=text NAME=e SIZE=30 VALUE=""><BR> 
 <INPUT TYPE=submit VALUE="Заполнить"> 
 <INPUT TYPE=reset VALUE="Очистить"> 
 </FORM> 
 1.1. Заполнение поля при нажатии кнопки 

В URL можно размещать сложные программы и вызовы функций. Таким образом, при программировании гипертекстового перехода JavaScript-интерпретатор получает управление после того, как пользователь «кликнул» по гипертекстовой ссылке.