Пока же
хотелось бы остановиться вот на чем: если та или иная функция, являющаяся
целью гиперссылки, использующей псевдопротокол javascript, возвращает,
какое бы то ни было значение, то браузер будет замещать документ,
загруженный в текущее окно, возвращаемым функцией результатом.
В нижеследующем примере функция с именем generateDocument возвращает
(при помощи оператора return) строку, при ближайшем рассмотрении
оказывающуюся действительным XHTML-документом. Этот документ загружается
в окно браузера после того, как пользователь перейдет по гиперссылке,
описываемой тегом с атрибутом href, принимающим значение
j avascript:generateDocument();.
t »» ¦ ‘¦ : ‘¦
[ Листинг 7Х Формирование документа при помощи JavaScript
%> "http://www.w3.org/TR/xhtmll/DTD/xhtmll-strict.dtd">
function generateDocument()
{
return(f
^ "http://www.w3.org/TR/xhtmll/DTD/xhtmll-
^strict.dtd">\n\n\n\n
\n^ flOKyMeHT\n\n\n
\n Новый^ документп1>\п Этот документ сформирован при помощи
^ JavaScript
\n
\n\n');}
334 Часть II. Применение веб-технологий стороны клиента для создания сайтов
документах/р>
На рис. 7.2 вверху показан первоначальный внешний вид страницы,
описанной в вышеприведенном листинге, а внизу— результат щелчка по
гиперссылке "Сформировать новый документ".
О 2)
Остановите Обншетъ s $cwc$
¦0
Журнал
Сформировать новый документ
Сервис Oip-a&KS
AyphoA }
AaP*a Ш Z:\examples\07\03\index.html
jjj фтытщ-
Новый документ
Этот документ сформирован при помощи JavaScript
"ГГГ
^МоЙ«инпь«*ф
Рис. 7.2. Формирование нового документа при помощи JavaScript
Пары символов \п, в обилии фигурирующие в строке, возвращаемой
функцией generateDocument, относятся к разряду так называемых escape-последова-
телъностей. Подобными сочетаниями знаков во многих языках программи-
Глава 7. Создание интерактивных сайтов при помощи языка сценариев JavaScript 335
рования кодируются те или иные специальные символы. Собственно
последовательность \п обозначает переход на новую строку.
К сожалению, документ, генерируемый описанным выше скриптом,
некорректно отображается в Firefox вследствие того, что в похожих ситуациях
означенный браузер по неведомым причинам искажает значения, содержащие
русские буквы... Та же самая болезнь наблюдается у Firefox и при попытке
передачи данных веб-форм по электронной почте за счет указания почтового
адреса в значении атрибута action тега
5th Фев 2011
|
Теги:
|