передача информации о нажатой кнопке
Здравствуйте, я в js практически ничего не смыслю, но надо решить задачу: на главной странице сайта нажимается одна из двух кнопок. И мы переходим на другую страницу. На второй странице 2 блока, и в зависимости от того какая кнопка была нажата, эти блоки встают по порядку. С перемещением блоков проблем нет, а вот как отследить нажатую кнопку никак не пойму...
|
Много способов:
1. Передавать якорь:. <a href="/page.php#button1">Кнопка 1</a> <a href="/page.php#button2">Кнопка 2</a> page.php: var hash = window.document.location.hash.substr(1); if(hash == 'button1') { ... } else if(hash == 'button2') { ... } 2. Передавать GET: <a href="/page.php?button=1">Кнопка 1</a> <a href="/page.php?button=2">Кнопка 2</a> page.php: var button = '<?=htmlspacialchars($_GET['button'])?>'; if(button == 1) { ... } else if(button == 2) { ... } 3. Записывать id кнопки в cookie, а на самой странице получать его. Но способ не очень хороший. 4. Записывать id кнопки в localStorage (в старых браузерах не будет работать): <a href="/page.php" onclick="localStorage.setItem('button', 1);">Кнопка 1</a> <a href="/page.php" onclick="localStorage.setItem('button', 2);">Кнопка 2</a> page.php: var button = localStorage.getItem('button'); if(button == 1) { ... } else if(button == 2) { ... } 5. Записывать в сессию. Отправлять id кнопки ajax'ом на сервер. Потом на странице получать с помощью $_SESSION['button'], но способ тоже не очень хороший. |
Часовой пояс GMT +3, время: 18:20. |