Существует два способа получить параметры стержня адреса в JS: первым является использование регулярных выражений для получения параметров панели адресов, а второй - относительно традиционный метод. Здесь редактор настоятельно рекомендует использовать первый метод, который является удобным и практичным. Пожалуйста, смотрите данные ниже для конкретного процесса реализации.
Метод 1: Используйте регулярные выражения для получения параметров стержня адреса: (настоятельно рекомендуется, как практично, так и удобно!)
Функция getQueryString (name) {var reg = new Regexp ("(^| &)" + name + "= ([^&]*) (& | $)"); var R = window.location.search.substr (1) .match (reg); if (r! = null) return unescape (r [2]); вернуть null;}// метод вызова
Alert (getQueryString ("имя параметра 1"));
Alert (getQueryString ("имя параметра 2"));
Alert (getQueryString ("имя параметра 3"));
Вот пример:
Если URL -адрес адресной строки: ABC.HTML? ID = 123 & url = http: //www.maidq.com
Затем, но вы используете приведенный выше метод для вызова: alert (getQueryString ("url"));
Пойдет диалоговое окно: Содержимое http://www.maidq.com
Если вы используете: alert (getQueryString ("id")); тогда всплывающее содержание составляет 123;
Конечно, если вы не проходите параметры, например, если ваш адрес ABC.HTML и после него нет параметров, то если результат принудительного выходного вызова иногда сообщает об ошибке:
Поэтому нам нужно добавить решение, чтобы определить, пуст ли параметр, и сначала назначьте значение переменной:
var myurl = getQueryString ("url"); if (myurl! = null && myurl.tostring (). Длина> 1) {alert (getQueryString ("url"));}Таким образом, вы не сообщите об ошибке!
Метод 2: традиционный метод
<script type = "text/javascript"> function urlSearch () {var name, value; var str = location.href; // Получить всю полосу адреса var num = str.indexof ("?") Str = str.substr (num+1); // Получить все параметры stringvar.substr (start [, length] var arr = str.split ("&"); // Поместите каждый параметр в массив для (var i = 0; i <arr.length; i ++) {num = arr [i] .indexof ("="); name = arr [i] .substring (0, num); value = arr [i] .substr (num+1); это [name] = value;}}} var request = new urlSearch ();Например, сохраните этот код как 1.html
Тогда я хочу получить доступ к 1.html? Id = тест
В настоящее время получается тестовое значение
Называется в HTML
<script type = "text/javascript"> var a = "http://baidu.com"; </script> </head> <body> <a id = "a1" href = ""> sadfsdfas </a> <script> var a1 = document.getElement ("a1"); a1.href = a; var a = "http://xxx.com/gg.htm?cctv"; var s = a.indexof ("?"); var t = a.substring (s+1); // t - это то, что происходит после </script>stringvar.substr (start [, длина]
Возвращает подстроение указанной длины, начиная с указанной позиции.
Stringvar
Требуемый вариант. Строковый буквальный или строковый объект для извлечения подстроки.
начинать
Требуемый вариант. Начальная позиция требуемой подстроки. Индекс первого символа в строке составляет 0.
длина
Необязательный. Количество символов, которые должны быть включены в возвращенную подстроение.
Если длина равен 0 или отрицательно, будет возвращена пустая строка. Если этот параметр не указан, подстроение продолжается до конца StringVar.
Вот некоторые связанные параметры:
str.TolowerCase () конвертируется в нижний регистр
str.touppercase () Все строки преобразуются в прописное покрытие
URL - это единый локатор ресурсов (URL)
Полный URL состоит из этих частей:
Схема: // Хост: Порт/Путь? Запрос#фрагмент
Схема: протокол связи
Обычно используется HTTP, FTP, Maito и т. Д.
Хост: Хост
Сервер (компьютер) Система доменных имен (DNS) Имя хоста или IP -адрес.
Порт: номер порта
Целое число, необязательное, когда его опущены, используется порт по умолчанию схемы, такой как порт по умолчанию HTTP, составляет 80.
Путь: Путь
Строка, разделенная с помощью нуля или нескольких символов «/», обычно используется для представления каталога или файла на хосте.
Запрос: запрос
Необязательно, он используется для передачи параметров на динамические веб -страницы (например, веб -страницы с использованием CGI, ISAPI, PHP/JSP/ASP/ASP.NET и другие технологии). Может быть несколько параметров, разделенных символом "&", а имя и значение каждого параметра разделены символом "=".
Фрагмент: информационный фрагмент
Строка, которая указывает фрагменты в сетевом ресурсе. Например, на веб -странице есть несколько существительных объяснений, и вы можете использовать фрагмент, чтобы непосредственно найти определенный термин. (также известен как точки якоря.)
Для такого URL
http://www.maidq.com/index.html?ver=1.0&id=6#imhere
Мы можем получить различные его части в JavaScript
1, window.location.href
Вся строка URL (полная адресная строка в браузере)
Возвращение значения в этом примере: http://www.maidq.com/index.html?ver=1.0&id=6#imhere
2, window.location.protocol
Протокол часть URL
Этот пример возвращает значение: http:
3, window.location.host
Хост часть URL
Возвращение значения в этом примере: www.maidq.com
4, window.location.port
Порт -часть URL
Если используется порт 80 по умолчанию (обновление: даже если: 80. добавлено), возвращаемое значение не является по умолчанию 80, а пустым символом
Этот пример возвращает значение: ""
5, window.location.pathname
Часть URL -адреса пути (то есть адрес файла)
Этот пример возвращает значение: /fisker/post/0703/window.location.html
6, window.location.search
Запрос (параметры) часть
В дополнение к назначению значений динамическим языкам, мы также можем предоставить статические страницы и использовать JavaScript для получения значения параметра, который считается.
Возвращение значения в этом примере:? Ver = 1.0 & id = 6
7, window.location.hash
Якорь
Возвращаемое значение в этом примере: #Imhere
Выше приведено полное описание двух методов (простых и практических) JS для получения параметров шарниров адреса, представленных редактором. Я надеюсь, что это будет полезно для всех. Если у вас есть какие -либо вопросы, пожалуйста, оставьте мне сообщение, и редактор ответит всем вовремя. Большое спасибо за вашу поддержку сайту wulin.com!