Чтение онлайн

на главную

Жанры

Windows Script Host для Windows 2000/XP

Попов Андрей Викторович

Шрифт:

}

//Функция-обработчик нажатия на кнопку ">"

function btnNext_OnClick {

 //Проверяем, были ли сделаны изменения в форме

 if (objListPersons.IsChanged) { //Изменения были сделаны

//Сохраняем данные в XML-файле

objListPersons.SaveData;

//Заново загружаем данные из XML-файла в массив PersonArr

objListPersons.FileToArray;

 }

 //Переходим
к следующей записи в массиве

 objListPersons.NextRecord;

 //Загружаем в форму данные из массива PersonArr

 //для текущей записи

 objListPersons.LoadDialog;

 //Выводим сообщение в заголовке окна

 doc.title = "Запись N " + (objListPersons.CurRecord + 1);

}

//Функция-обработчик нажатия на кнопку ">>"

function btnFinal_OnClick {

 //Проверяем, были ли сделаны изменения в форме

 if (objListPersons.IsChanged) { //Изменения были сделаны

//Сохраняем данные в XML-файле

objListPersons.SaveData;

//Заново загружаем данные из XML-файла в массив PersonArr

objListPersons.FileToArray;

 }

 //Переходим к последней записи в массиве

 objListPersons.FinalRecord;

 //Загружаем в форму данные из массива PersonArr

 //для текущей записи

 objListPersons.LoadDialog;

 //Выводим сообщение в заголовке окна

 doc.title = "Запись N " + (objListPersons.CurRecord + 1);

}

//Функция-обработчик изменения текста в полях ввода

function txtBoxOnChange {

 //Устанавливаем признак изменения данных в форме

 objListPersons.IsChanged = true;

 //Выводим сообщение в заголовке окна

 doc.title = "Редактирование данных";

}
 

Окончательная доработка сценария IEPhoneBook.js

Выше были описаны все основные функции, которые используются для работы с записной книжкой в диалоговом режиме. Осталось лишь собрать эти функции в один JScript-сценарий IEPhoneBook.js, определить глобальные переменные и добавить вспомогательные функции

GetTagVal(obj, tgName)
и
SetTagVal(obj, tgName, sVal)
для доступа к значениям XML-элементов (листинг 7.13).

Листинг 7.13. Функция для доступа к значениям XML-элементов

//Определение значения тега tgName XML-элемента obj

function GetTagVal(obj, tgName) {

 var ElemList;

 //Создаем коллекцию дочерних для obj элементов, которые

 //задаются тегом tgName

 ElemList=obj.getElementsByTagName(tgName);

 //Проверяем, есть ли в коллекции ElemList элементы

 if (ElemList.length>0)

//Возвращаем значение тега tgName

return ElemList.item(0).text

 else return "";

}

//Изменение значения тега tgName XML-элемента obj

function SetTagVal(obj, tgName, sVal) {

 var ElemList,New;

 //Создаем коллекцию дочерних для obj элементов, которые

 //задаются тегом tgName

 ElemList=obj.getElementsByTagName(tgName);

 //Проверяем, есть ли в коллекции ElemList элементы

 if (ElemList.length>0)

//Устанавливаем значение элемента, задаваемого

//тегом tgName

ElemList.item(0).text=sVal;

 else {

//Создаем новый элемент с именем tgName

NewElem=XML.createElement(tgName);

//Добавляем новый элемент в качестве дочернего для

//элемента obj

obj.appendChild(NewElem);

//Устанавливаем значение добавленного элемента

obj.lastChild.text=sVal;

 }

}

Полный текст сценария IEPhoneBook.js приведен в листинге 7.14.

Листинг 7.14. Сценарий IEPhoneBook.js

/*******************************************************************/

/* Имя: IEPhoneBook.js */

/* Язык: JScript */

/* Описание: Сценарий для работы с записной книжкой */

/* (графический интерфейс пользователя на основе */

/* HTML-формы). */

/*******************************************************************/

//Объявляем глобальные переменные

Поделиться:
Популярные книги

Заставь меня остановиться 2

Юнина Наталья
2. Заставь меня остановиться
Любовные романы:
современные любовные романы
6.29
рейтинг книги
Заставь меня остановиться 2

Усадьба леди Анны

Ром Полина
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Усадьба леди Анны

Мимик нового Мира 10

Северный Лис
9. Мимик!
Фантастика:
юмористическое фэнтези
альтернативная история
постапокалипсис
рпг
5.00
рейтинг книги
Мимик нового Мира 10

Кодекс Охотника. Книга IX

Винокуров Юрий
9. Кодекс Охотника
Фантастика:
боевая фантастика
городское фэнтези
попаданцы
5.00
рейтинг книги
Кодекс Охотника. Книга IX

Игрок, забравшийся на вершину. Том 8

Михалек Дмитрий Владимирович
8. Игрок, забравшийся на вершину
Фантастика:
фэнтези
рпг
5.00
рейтинг книги
Игрок, забравшийся на вершину. Том 8

Физрук: назад в СССР

Гуров Валерий Александрович
1. Физрук
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Физрук: назад в СССР

Темный Патриарх Светлого Рода 6

Лисицин Евгений
6. Темный Патриарх Светлого Рода
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Темный Патриарх Светлого Рода 6

Энфис 5

Кронос Александр
5. Эрра
Фантастика:
героическая фантастика
рпг
аниме
5.00
рейтинг книги
Энфис 5

Хочу тебя навсегда

Джокер Ольга
2. Люби меня
Любовные романы:
современные любовные романы
5.25
рейтинг книги
Хочу тебя навсегда

Я все еще не князь. Книга XV

Дрейк Сириус
15. Дорогой барон!
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Я все еще не князь. Книга XV

Волк 5: Лихие 90-е

Киров Никита
5. Волков
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Волк 5: Лихие 90-е

Разбуди меня

Рам Янка
7. Серьёзные мальчики в форме
Любовные романы:
современные любовные романы
остросюжетные любовные романы
5.00
рейтинг книги
Разбуди меня

Ученик

Первухин Андрей Евгеньевич
1. Ученик
Фантастика:
фэнтези
6.20
рейтинг книги
Ученик

Не грози Дубровскому! Том IX

Панарин Антон
9. РОС: Не грози Дубровскому!
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Не грози Дубровскому! Том IX