Главная » Файлы » Статьи для вебмастера » Статьи для вебмастера |
Передача переменных в адресной строке
24.06.14, 09:39:53 | |
Передача переменных в адресной строке осуществляется путём дописывания в адрес страницы необходимых нам переменных, например так: http://site.ru/?id=1&n=2 Наверняка многие видели подобное. Так вот сейчас я расскажу как этим воспользоваться и на своём сайте. На самом деле всё очень просто. На странице где необходимо считывать переменные вставляем в любое удобное для вас место код: Код <script> function GetParam(search, name){ name=name+"="; var gp=""; if (search!='') { if (search.indexOf (name, 0)!=-1){ var startpos=search.indexOf(name, 0)+name.length; var endpos=search.indexOf("&",startpos); if (endpos<startpos) {endpos=search.length;} var gp=p.substring(startpos,endpos); } else { gp=""; } } else { gp=""; } return gp; } var p=window.location.search; var gp=GetParam(p, "id"); if (gp=="1") { // Тут ваши события, которые будут происходить если переменная в адресной строке будет равна 1. } </script> Теперь, если вы вдруг захотели обрабатывать несколько переменных или несколько её значений, так как в адресной строке можно задать очень много различных переменных и задать им различные значения. Весь смак просчитывается тут вот в этом коде: Код var p=window.location.search; var gp=GetParam(p, "id"); if (gp=="1") { // Тут ваши события, которые будут происходить если переменная в адресной строке будет равна 1. } Если вы хотите обработать вторую переменную например n то скопируйте его в скрипте чуть ниже и измените поиск переменной id на n, вот так: Код var p=window.location.search; var gp=GetParam(p, "n"); if (gp=="1") { // Тут ваши события, которые будут происходить если переменная в адресной строке будет равна 1. } Значение переменных проверяется if'ом. Если ваша переменная может принимать несколько значений, то просто делаем несколько условий. Код var p=window.location.search; var gp=GetParam(p, "n"); if (gp=="1") { // Тут ваши события, которые будут происходить если переменная в адресной строке будет равна 1. } if (gp=="2") { // Тут ваши события, которые будут происходить если переменная в адресной строке будет равна 2. } Строки Код var p=window.location.search; var gp=GetParam(p, "n"); отвечают за поиск переменной, по этому нельзя перемешивать if условия, то есть обратились за поиском значения переменной n и далее описываем все нужные условия для переменной n, а потом уже можем обращаться за поиском переменной x и описывать её условия. Ну и напоследок рабочий пример: Код <script> function GetParam(search, name){ name=name+"="; var gp=""; if (search!='') { if (search.indexOf (name, 0)!=-1){ var startpos=search.indexOf(name, 0)+name.length; var endpos=search.indexOf("&",startpos); if (endpos<startpos) {endpos=search.length;} var gp=p.substring(startpos,endpos); } else { gp=""; } } else { gp=""; } return gp; } var p=window.location.search; var gp=GetParam(p, "id"); if (gp=="1") { document.write('Переменная ID равна ' +gp); } </script> Удачи в сайтостроении | |
Просмотров: 513 | Загрузок: 0 | |
Всего комментариев: 0 | |
| |