- •Лабораторная работа № 10
- •Объекты String.
- •Некоторые методы объектов String
- •Поиск первого (последнего) вхождения подстроки.
- •Нахождение подстроки
- •Объект location
- •Передача информации с одной страницы на другую
- •Задание 1
- •Свойства объекта location, содержащие составные части url
- •Методы.
- •Глобальные функции для работы со строками
Объект location
Объект location является одним из дочерних объектов корневого объекта объектной модели браузера, т.е. window. Объекты location создаются для хранения информации об URL текущего документа, загруженного в окно, а также имеют методы.
Полный URL содержится в свойстве href объекта location. Это свойство (window.location.href) доступно как для чтения, так и для записи.
Свойство href
Свойство href объекта location хранит URL текущего документа в виде символьной строки.
При присваивании свойству href нового значения происходит загрузка в окно документа, соответствующего новому URL. Эта возможность часто используется для того, чтобы заменить документ в текущем окне.
Примечание.
Информацию об URL текущей веб-страницы можно получить также с помощью свойства URL (буквы верхнего регистра!) объекта document. Однако это свойство, в отличие от location.href, доступно только для чтения.
Передача информации с одной страницы на другую
Область определения переменных JavaScript — максимум одна страницей. Поэтому, если на некоторой странице нужно использовать информацию, сформированную на другой странице, то приходится прибегать к разным искусственным приемам для передачи данных, например, использовать строку запроса, которая добавляется в URL файла после знака вопроса.
Задание 1
Создать каркасы для двух html-файлов: base.htm и test.htm.
В файле base.htm определить метку перехода на страницу test.htm, открываемую в новом окне браузера. К указанию пути в атрибуте href тега <a> добавить строку запроса, т.е. использовать URL вида: test1.htm?x=1.
В файле test.htm прочесть свойство location.href и вывести его значение на страницу этого документа.
Используя методы объекта String, провести разбор прочтенного URL следующим образом.
а) Извлечь подстроку, содержащую информацию для запроса (т.е. подстроку, начинающуюся после знака вопроса).
б) Извлечь из полученной подстроки новые подстроки, стоящие до и после знака равенства (имя переменной и ее значение).
Используя результаты разбора строки запроса, вывести на страницу текст типа "Переменная х имеет значение 1".
Усложнить задачу, распространив обработку на передачу значений произвольного числа переменных и проверив работу программного кода на примере ссылки в файле base.htm
<a href="test1.htm?x=1&y=2&z=3">Вперед</a>.
Свойства объекта location, содержащие составные части url
Объект location имеет дополнительные свойства, которые позволяют удобно получать в виде строк составные части URL (другим способом их можно получить, проводя разбор URL как строки "вручную").
Свойство объекта location |
Значение свойства (часть URL) |
protocol |
схема URL (http:, file: и т.п.). |
hostname |
имя хоста (например, www.sfedu.ru) |
port |
используемый порт (если он явно указан в URL) |
pathname |
путь на хосте к документу или к программе, генерирующей его |
search |
строка запроса, включая вопросительный знак |
hash |
ссылка на внутреннюю метку документа, включая знак # |
Для документов, загруженных с локального жесткого диска по протоколу file://, свойства port, hostname будут иметь пустые значения.