Программирование >>  Руководство по созданию web приложений 

1 ... 33 34 35 [ 36 ] 37 38 39 ... 141


<table

</table>

паив= В2>

Если щелкнуть ее мышью, в окно браузера загрузится документ из файла

указанный в параметре ACTION тега <FORM>. Текст файла Masterl.asp . в листинге 3-8. Помимо таблиц и форм,

он содержит серверный сценарии, составленный на языке

Листинг 3-8 Вы найдете в файле chOSIMaslerl.asp на прилагаемом к книге компакт-диске.

Первая строка файла Masterl.asp сообщает серверу Web о том, что данный файл содержит серверный сценарий, составленный на языке С этой кон-

струкцией Вы уже встречались. А вот вторая строка для Вас новая:

Записывая нулевое значение в свойство Expires объекта Response, мы тем самым сообщаем что полученная им страница уже устарела. В

результате он не будет ее Это еще один способ отменить :

ванне страниц, мешающее обновлению динамически создаваемых документов HTML в окне браузера. К сожалению, данное решение работает не всегда. Более . . способ - добавление к адресу В страницы при ее загрузке фиктивного параметра в виде случайного числа.

Следующее действие серверного сценария - считывание содержимого нере-сеанса с именем Эта операция выполняется нри помощи

объекта Session:

var sCurrency =

Когда посетитель попадает на эту . в раз, такой неременной

сеанса еще не существует. Поэтому в локальную переменную sCurrency занесено значение null. Когда же пользователь вернется на вторую страницу мастера с последующих страниц, : . сеанса . уже содержит код вы-

бранной валюты.

Чтобы нри повторных помечен переключатель, соответ-

ствующий выбранной ранее валюте, необходимо нри генерации кода HTML указать в соответствующем параметр checked. Для этого мы

мотрели в Сценарии ASP три локальные неременные с именами sChk-

Dollar и , С помощью конструкции i . в из этих переменных

записывается текстовая строка checked . В дальнейшем мы выра-

вида чтобы определить параметры тегов . Это

HTML, : удобными и мощными, но ;

с точки зрения совместимости конструкциями на сценариев

текст главной страницы мастера показан в листинге 3-7.

Листинг 3-7 Вы найдете в файле , llasteri.html на прилагаемом к книге компакт-диске.

Она содержит обычную форму с типа submit:



ляг;1 нам отметить только один из трех переключателей, осутггтиляющн!!. выбор валюты:

V:i( : ; seSSCurrency )

V:i(

v:i ( :

. - == in] I -Is- - - r . == .lollar )

-Is- . == ,iia )

else

sCtikFtub= checi<ed ;

*>

fflethod= POST >

<input

щкив марки

<table

<input </table>

Такой подход позволил нам определять начальное положение переключателя с зависимой фиксацией из серверного - ; расположенного в странице ASP. Причем, что важно, мы делаем это без . . : клиентских сценари-

ев, применение которых ; . 1 возникновением потенциальных проблем совместимости с . ; . различных типов.

Теперь мы расскажем о .;, как реализованы . между страницами нашего мастера платежей.

Кнопку Вперед надо поместить в ту же форму, что и переключатели выбора валюты. Такая - i вызвана тем, что, щелкнув ее. Вы передадите уп-

равление следующей странице мастера. Эта страница должна извлечь состояние переключателя выбора валюты, передаваемое вместе с содержимым формы.

Кнопки Назад и Отмена также следует расположить в отдельных формах, так как они предназначены для загрузки разных страниц. Предусмотрев для этих кнопок разные формы, мы можем указать в соответствующих параметрах action i ORi> различные адреса URL. В первой странице мастера в результате щелчка кнопок Назад и Отмена загружается одна и та же страница i i однако во второй странице . ! это уже будет не так.



Рассмотрим исходный текст второй страницы мастера платежей, приведенный в листинге 3-9.

Листинг 3-9 Вы найдете в файле с1 на прилагаемом к книге

компакт-диске.

В этом листинге после обычных строк, определяющих язык серверного сце-и отменяющих кэширование, находятся строки, извлекающие код ной валюты. Он из параметров, переданных вместе с данными фор-

мы предыдущей страницей мастера, и записывается к переменную

!= 0)

else var

Однако файл может загружен только в результате щел-

чка кнопки Вперед, на предыдущей страницы мастера, но и в

результате щелчка кнонки Назад, на следующей странице

В носледнем случае загрузка файла будет : из

другой формы, не содержащей нереключателя с именем . ;

Поэтому мы вначале определяем, есть ли элементы в наборе

применяя - конструкцию:

- ,t != 0)

Когда пользователь страницы мастера в прямом направлении, этот

набор содержит один такой элемент е номером 1. Мы извлекаем его при помощи объекта Request и сохраняем в сеансовой неременной sessCurrency:

к:д1г r-eic;y==Be(iuusl. ForiiiC Cur гегву ;f 1)

Когда же пользователь страницы мастера в . .

сеансовая неременная sessCurrency уже создана и . Паш

сценарий извлекает из нее код выбранной валюты обычным образом и записы-в переменную sCurrency:

На следующем этапе в зависимости от содержимого переменной sCurrency записывает ту или иную текстовую строку с названием валюты в неременную которую мы для нодготовки текста сообщения с валюты (в виде конструкции <х

ifCsCurrency ==



1 ... 33 34 35 [ 36 ] 37 38 39 ... 141

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика