Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Yazyk_VBScript.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
150.27 Кб
Скачать

Объектная модель и взаимодействие с элементами документа

Как уже говорилось (в разделе "Объектные модели языков сценариев" этой главы), при интерпретации HTML-страницы браузер создает объекты, соответствующие элементам отображаемой страницы. Эти объекты доступны для приложения VBScript и любой сценарий может обратиться или установить значения свойств объектов, выполнить их методы.

Язык VBScript, как и другой распространенный язык сценариев, может манипулировать стандартными объектами, встроенными в ядро VBScript, и объектами, предоставляемыми браузером. При описании объектов JavaScript мы рассматривали объекты браузера Netscape Navigator фирмы Netscape. Теперь остановимся на объектах браузера Microsoft Internet Explorer фирмы Microsoft.

Функции и объекты ядра vbScript

Ядро VBScript предоставляет программисту большой набор встроенных функций для работы с датами, строковыми подтипами данных, вычисления математических функций и отображения информационных диалоговых окон и окон ввода информации пользователем.

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

Таблица 9.11. Математические функции VBScript

Функция

Действие

Abs

Вычисляет абсолютное значение

Atn

Вычисляет значение арктангенса своего параметра

Cos

Вычисляет значение косинуса угла, заданного в радианах

Exp

Экспоненциальная функция: еx

Int

Целая часть числа

Log

Вычисляет натуральный логарифм своего параметра

Sin

Вычисляет значение синуса угла, заданного в радианах

Sqr

Вычисляет значение квадратного корня своего параметра

Tan

Вычисляет значение тангенса угла, заданного в радианах

Получить текущее время, текущую дату, а также одновременно и дату, и время, установленные на компьютере пользователя, можно с помощью функций Time, Date и Now. Эти три процедуры-функции не требуют параметров, поэтому при их использовании в выражениях следует задавать открывающую и закрывающую скобки, указывающие на отсутствие параметров, как показано в следующем фрагменте кода:

iTime = Time()

' переменная iTime содержит текущее время

iDate = Date()

' переменная iDate содержит текущую дату

iDateTime = Now()

' переменная iDateTime содержит текущую дату и время

Что хранится в этих переменных, зависит от системных установок времени и даты, определенных на компьютере пользователя. Например, на компьютере с установленным форматом времени Ч:мм:сс и даты дд.ММ.гг печать в документе значений переменных предыдущего фрагмента кода будет выглядеть следующим образом:

14:49:31

' Значение переменной iTime

23.06.99

' Значение переменной iDate

23.06.99 14:49:31

' Значение переменной iDateTime

Если какая-либо переменная содержит значение подтипа Date, или ее содержимое может быть преобразовано в этот подтип, то функции Day (переменная), Month (переменная) И Year (переменная) возвращают соответственно число, месяц и год даты, не зависимо от формата хранения дат на компьютере пользователя. Функции Hour (переменная), Minute (переменная) и second (переменная) возвращают целые числа, соответствующие часам, минутам и секундам времени, хранящимся в переменной, являющейся параметром этих функций.

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

Функция Len(строка) возвращает число символов в строке с учетом лидирующих и замыкающих пробелов. Если пользователь ввел в поле формы строку " строка " с двумя пробелами в начале и одним пробелом в конце, то эта функция возвратит значение 9. Для удаления незначащих пробелов в Yачале или конце строки можно обратиться к функциям Ltrim, Rtrim и Trim, которые, соответственно, удаляют лидирующие, замыкающие или оба типа пробелов из строки, переданной этим функциям в качестве параметров.

Функции Lcase и Ucase переводят все содержимое строки соответственно в нижний или верхний регистр.

Для сравнения Двух строк используется функция StrComp( строка 1, строка2, метод_сравнения). Она возвращает значение 0 (если строки совпадают в соответствии с методом сравнения, заданным третьим параметром функции), значение -1 (если строка1 меньше строки2) и значение 1 в любом не совпадающем с двумя предыдущими случае. Параметр метод_сравнения может принимать два значения: 0 — строки сравниваются с учетом регистра,1 — строки сравниваются без учета регистра.

Функция InStr(нач_позиция, строка1, строка2, метод_сравнения) позволяет определить, содержится ли строка2 в строке1. Параметр нач_позиция задает позицию в строке1, с которой начинается поиск подстроки, заданной параметром строка2. Это достаточно полезно, если известно, что строка1 содержит несколько вхождений строки2. Параметр метод_сравнения определяет, учитывается ли регистр при поиске соответствующей подстроки, и совпадает с аналогичным параметром функции strComp. Функция поиска подстроки intstr возвращает номер позиции в строке1 первого вхождения строки2, если такое найдено, и значение 0 — в противном случае.

Две стандартные функции InputBox и MsgBox позволяют отобразить диалоговое окно с полем ввода и диалоговое окно с сообщением пользователю.

Функция InputBox отображает диалоговое окно с полем ввода и двумя кнопками: ОК и Cancel (Отмена). Она имеет следующий синтаксис:

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]