Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОИТ Met VBScript.doc
Скачиваний:
7
Добавлен:
17.11.2019
Размер:
295.94 Кб
Скачать

Отправка формы

По сравнению с проверками поцесс отправки выглядит очень простым. В нашем примере мы использовали стандартную кнопку HTML с надписью Отослать, связанную с проседурой обработки, которая проверяет и отсылает содержимое формы.

Код, который нужно было добавить для отправки, показан ниже:

' Если данные корректны, то отправляем их.  MsgBox "Возраст введен верно. Спасибо."  document.frmExample5a.submit

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

Пятое упражнение по vbScript

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

Упражнение 5: как проверить и отправить форму

В этом упражнении вы создадите документ HTML, который содержит сценарий, получающий данные с Web-страницы, выполняет вычисления и выводит результаты обратно на страницу. Кроме того, он предоставляет цены на товарыи вычисляет размер скидок в зависимости от размера заказа. И, наконец, он проверяет данные и отправляет заказ вам по почте.

Исследование документа html

Откройте файл p0005.txt в текстовом редакторе. Это весь код HTML этого упражнения. Заметьте новую кнопку cmdSubmit, которая будет использоваться для отправки формы по почте после проверки. Загрузите файл в Internet Explorer. При этом страница должна выглядить так.

Теперь добавьте сценарий , который будет осуществлять проверку и отправку вашей формы. Полную версию этой части упражнения вы можете найти в файле p0005a.htm.

<SCRIPT LANGUAGE="VBScript">

<!--Для работы с несовместимым броузерами

Option Explicit

Dim Cost 'Цена продукта

Dim Qty 'Количество заказанного товара

Cost=0

sub Button1_OnClick()

Dim AD ' AmountofDiscount

Dim AT ' AmountofTax

Dim DISCOUNT_LIMIT

Dim DISCOUNT_RATE

Dim SB 'SubtotalBefore

Dim SA 'SubtotalAfter

Dim TAX_RATE

Dim TC 'TotalCost

'Проводит проверку корректности перед любыми действиями. Хотя это не

'всё, что мы можем проверить, остальное можно сделать по образу и подобию.

If (Len(document.all.Edit1.value) = 0) Then

MsgBox "Вы должны ввести количество товара."

Exit Sub

End If

If (Not IsNumeric(document.all.Edit1.value)) Then

MsgBox "Вы должны ввести число."

Exit Sub

End If

If (Cost = 0) Then

MsgBox "Вы должны выбрать один из видов товара."

Exit Sub

End If

'Определение констант

DISCOUNT_LIMIT=1000

DISCOUNT_RATE=0.10

TAX_RATE=0.06

'Вычисление подытога

Qty=document.all.Edit1.value

SB=Qty*Cost

'Проверка на минимальный объем покупок

If (SB>DISCOUNT_LIMIT) Then AD=SB*DISCOUNT_RATE Else AD=0

SA=SB-AD

'Вычисление налога и итога

AT=SA*TAX_RATE

TC=SA+AT

'Отображение результатов

document.all.Edit3.value=CStr(SB) & " $"

document.all.Edit4.value=CStr(AD) & " $"

document.all.Edit5.value=CStr(SA) & " $"

document.all.Edit6.value=CStr(AT) & " $"

document.all.Edit7.value=CStr(TC) & " $"

end sub

sub ListBox_onchange()

Dim intMnt

intMnt=CInt(document.all.ListBox.value)

Select Case intMnt

Case 0

Cost=0

Case 1

Cost=645

Case 2

Cost=710

Case 3

Cost=320

Case 4

Cost=430

Case 5

Cost=940

Case 6

Cost=255

Case 7

Cost=150

End Select

document.all.Edit2.value=CStr(Cost) & " $"

end sub

sub cmdSubmit_onClick()

'Отсылает данные на обработку

MsgBox "Все введено правильно. Отправляю."

document.frmMnt.submit

end sub

-->

</SCRIPT>

Сохраните файл и загрузите его в IE. Ничего не вводя в поле Количество, желкните на кнопке Вычисление цены. Появится такое диалоговое окно.

Введите какую-либо букву в поле Количество, желкните на кнопке Вычисление цены. Появится диалоговое окно.

Введите значение 10 в поле Количество и снова желкните на кнопке Вычисление цены. На этот раз вы увидите такое диалоговое окно.

И, наконец, выберите товар из выпадающего списка. Например самый дорогой монитор или самый большой. Последовательно нажав кнопки Вычисление цены и Отправить данные, вы получит е такой результат.