Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Получение и обработка параметров (https://javascript.ru/forum/events/2719-poluchenie-i-obrabotka-parametrov.html)

killer_djon 04.02.2009 03:20

Получение и обработка параметров
 
Все доброй ночи, у меня вопрос по работе с параметрами в адресной строке, я из некой страницы получаю параметр и его значение типа http://www.blablabla.ru?cat=1 на странице где я это получаю я сохраняю в массиве параметр1=значение1&парамет р2=значение2, далее у меня есть функция постраничной навигации на сайте, в которую мы передаем явно параметр отображения нужного нам div-а теперь вопрос:
как мне этой функции передать параметр полученный в адресной строке...
очень срочно надо плиззз помогите, я не оч силен в JavaSCript
Всем большое спасибо!

killer_djon 04.02.2009 03:26

1. функция чтение параметров и разбиение в массив:
<script type="text/javascript">
  function getParam(){
var tmp = new Array();      // два вспомагательных    
var tmp2 = new Array();     // массива    
var param = new Array();    
        
var get = location.search;  // строка GET запроса    
if(get != '')    
{    
    tmp = (get.substr(1)).split('&');   // разделяем переменные    
    for(var i=0; i < tmp.length; i++)    
    {    
        tmp2 = tmp[i].split('=');       // массив param будет содержать    
        param[tmp2[0]] = tmp2[1];       // пары ключ(имя переменной)->значение    
    }    
    var obj = document.getElementById('greq');  // вывод на экран    
  
    for (var key in param)    
    {    
        alert(param[key]);  // сдесь мы получаем значение параметра  
    }     
}    
   }
</script>



2. а вот работа скрипта который отображает нужный нам div

<style type="text/css">
  .page {
     display: none;
  }

  #page_1 {
     display: block;
  }
</style>

<script type="text/javascript">
  function showPage(page) {
     coll = document.getElementsByTagName("div");
     for(i=0; i<coll.length; i++) {
        if("page" == coll[i].className) {
           coll[i].style.display = "none";
        }
     }
     document.getElementById("d_"+page).style.display = "block";
  }
</script>

<div id="d_1" class="page">page 1</div>
<div id="d_2" class="page">page 2</div>
<div id="d_3" class="page">page 3</div>

<a href="" onclick="showPage('1'); return false;">1</a>
<a href="" onclick="showPage('2'); return false;">2</a>
<a href="" onclick="showPage('3'); return false;">3</a>


вот и как мне вместо этого onclick="showPage('1'); вместо 1 внести значение полученное мною в адресной строке...???

x-yuri 04.02.2009 09:12

getParam('параметр1')

а getParam должна принимать имя требуемого параметра
что именно ты пытаешься сделать?

p.s. обычно загружать сразу все страницы медленно

p.p.s. не стоит превращать передачу параметров из одного js-скрипта в другой в общее правило


Часовой пояс GMT +3, время: 14:39.