26.09.2012, 23:58

Передача переменных в адресной строке



Передача переменных в адресной строке осуществляется путём дописывания в адрес страницы необходимых нам переменных, например так: http://site.ru/?id=1&n=2 Наверняка многие видели подобное. Так вот сейчас я расскажу как этим воспользоваться и на своём сайте.
На самом деле всё очень просто. На странице где необходимо считывать переменные вставляем в любое удобное для вас место код:
Code
var p=window.location.search;  
  var gp=GetParam(p, "id");  
  if (gp=="1") {  
  // Тут ваши события, которые будут происходить если переменная в адресной строке будет равна 1.  
  } Теперь, если вы вдруг захотели обрабатывать несколько переменных или несколько её значений, так как в адресной строке можно задать очень много различных переменных и задать им различные значения. Весь смак просчитывается тут вот в этом коде:  
var p=window.location.search;  
  var gp=GetParam(p, "id");  
  if (gp=="1") {  
  // Тут ваши события, которые будут происходить если переменная в адресной строке будет равна 1.  
  }
  

Если вы хотите обработать вторую переменную например n то скопируйте его в скрипте чуть ниже и измените поиск переменной id на n, вот так:
Code
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.  
  }
  

Строки
Code

var p=window.location.search;  
  var gp=GetParam(p, "n");
  

отвечают за поиск переменной, по этому нельзя перемешивать if условия, то есть обратились за поиском значения переменной n и далее описываем все нужные условия для переменной n, а потом уже можем обращаться за поиском переменной x и описывать её условия.

Ну и напоследок рабочий пример:

Code
<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>
Удачи в сайтостроении smile

Источник/Автор: apo-ucoz.com

Категория: HTML, CSS, JS, JQ | Добавил: sold93 (26.09.2012) Просмотров: 2580 | Рейтинг: 5.0/2
Теги: Javascript, Java script, js, передача, строке, адресной, переменных
Всего комментариев: 1
1 InfoDusha -Infoscript Team-  (30.09.2012 19:57)
Аватар пользователя
спасибо biggrin

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]