Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 30.03.2014, 22:49
Аспирант
Отправить личное сообщение для SeGun Посмотреть профиль Найти все сообщения от SeGun
 
Регистрация: 29.01.2013
Сообщений: 43

Передать переменную и по её значению сделать выбор из selecta
Здравствуйте уважаемые.

Передо мной стоит такая задача
1. Отправить переменную на другую страничку
делаю так:


<html>
<head>
    <title> Отправка данных </title>
</head>
<body>
<form action="target.php">
<button value="11111010101" name="hidden" type="submit">
 Отправить форму</button></p>
</form>   
</body>
 </html>

2. Поймать переменную на другой страничке, и в зависимости от её значения сделать выбор из select
Как то так:
...
$name=$_POST['hidden'];

<select size="1" name="rooms" 
		
   <option>1</option>
   <option>2</option>
   <option>3</option>
</select>
  <script>
 var select = document.getElementsByTagName('select') [0];
    select.addEventListener('change', function() {
     <-- значение переменной->   								       
    });

       </script>
...

Подскажите как правильно плиз.
Ответить с цитированием
  #2 (permalink)  
Старый 30.03.2014, 23:12
Аватар для nice_try
Профессор
Отправить личное сообщение для nice_try Посмотреть профиль Найти все сообщения от nice_try
 
Регистрация: 11.12.2013
Сообщений: 313

ну ты можешь при выводе option у твоего select проверять value с переданной переменной и если совпадает, то ставить selected
Ответить с цитированием
  #3 (permalink)  
Старый 30.03.2014, 23:22
Аспирант
Отправить личное сообщение для SeGun Посмотреть профиль Найти все сообщения от SeGun
 
Регистрация: 29.01.2013
Сообщений: 43

Я не просил готового решения.
Мне нужен был, только совет как обработать переданное значение и открыть страницу
Тем более что большая часть уже сделана
Ответить с цитированием
  #4 (permalink)  
Старый 30.03.2014, 23:52
Кандидат Javascript-наук
Отправить личное сообщение для aleks_lv Посмотреть профиль Найти все сообщения от aleks_lv
 
Регистрация: 23.04.2010
Сообщений: 105

вариант..
1)запиши в куки по клику
2)переход на другую страницу location.href="другая страница"
3)на другой считал куки и выставил селект
Ответить с цитированием
  #5 (permalink)  
Старый 31.03.2014, 00:02
Аспирант
Отправить личное сообщение для SeGun Посмотреть профиль Найти все сообщения от SeGun
 
Регистрация: 29.01.2013
Сообщений: 43

Спасибо. Попробую.
Ответить с цитированием
  #6 (permalink)  
Старый 31.03.2014, 00:03
Аватар для Vlasenko Fedor
Профессор
Отправить личное сообщение для Vlasenko Fedor Посмотреть профиль Найти все сообщения от Vlasenko Fedor
 
Регистрация: 13.03.2013
Сообщений: 1,572

<?php
// этоо файл target.php 
$sel = filter_input(INPUT_GET, 'hidden', FILTER_VALIDATE_INT);
if(!sel) $sel = 0;
?>
<!DOCTYPE HTML>
<html>
  <head></head>
  <body>
    <form action="target.php">
      <button value="1" name="hidden" type="submit">Отправить форму</button>
    </form>
    <select size="1" name="rooms">
      <option>1</option>
      <option>2</option>
      <option>3</option>
    </select>
    <script>
      window.onload = function () {
          var ops = document.querySelectorAll("select[name=rooms]>option");
		  var sel = <?php echo $sel;?>;
          if(sel < ops.length) ops[sel].selected = true;
        };
    </script>
  </body>
</html>

Последний раз редактировалось Vlasenko Fedor, 31.03.2014 в 00:05.
Ответить с цитированием
  #7 (permalink)  
Старый 31.03.2014, 00:49
Аспирант
Отправить личное сообщение для SeGun Посмотреть профиль Найти все сообщения от SeGun
 
Регистрация: 29.01.2013
Сообщений: 43

Вариант не плохой. Спасибо. Но похоже что он решает обратную задачу.
Тем не мене эта функция
<script>
window.onload = function () {
var ops = document.querySelectorAll("select[name=rooms]>option");
var sel = <?php echo $sel;?>;
if(sel < ops.length) ops[sel].selected = true;
};
</script>

то что я искал.
Ответить с цитированием
  #8 (permalink)  
Старый 31.03.2014, 21:55
Аспирант
Отправить личное сообщение для SeGun Посмотреть профиль Найти все сообщения от SeGun
 
Регистрация: 29.01.2013
Сообщений: 43

В общем сделал так:
Файл с кнопкой. Кнопок там таких 3
===============
<meta charset="windows-1251">
<form method="post" action="target.php">
 <input type="hidden" name="name1" value="1"> 
<input type=submit value="Отправить">
</form>

================
Файл target.php
================
<?

$sel=$_POST['name1'];
if(!sel) $sel = 0;

echo $name;

?>  
 <select size="1" name="rooms">
      <option>1</option>
      <option>2</option>
      <option>3</option>
    </select>
    <script>
      window.onload = function () {
          var ops = document.querySelectorAll("select[name=rooms]>option");
          var sel = <?php echo $sel;?>;
          if(sel < ops.length) ops[sel].selected = true;
        };
    </script>


Ещё раз спасибо всем кто помогал.
Тема закрыта.
Ответить с цитированием
  #9 (permalink)  
Старый 31.03.2014, 22:14
Аватар для Vlasenko Fedor
Профессор
Отправить личное сообщение для Vlasenko Fedor Посмотреть профиль Найти все сообщения от Vlasenko Fedor
 
Регистрация: 13.03.2013
Сообщений: 1,572

так нельзя
$sel=$_POST['name1'];
if(!sel) $sel = 0;

все данные полученные от клиента нужно фильтровать
$sel = (int)$_POST['name1'];
Ответить с цитированием
  #10 (permalink)  
Старый 31.03.2014, 22:32
Аспирант
Отправить личное сообщение для SeGun Посмотреть профиль Найти все сообщения от SeGun
 
Регистрация: 29.01.2013
Сообщений: 43

То же верно.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как сделать на сайте выбор шрифта пользователем и динамическое изменение введенного т angelzzz Events/DOM/Window 4 17.02.2014 05:59
Как передать переменную с jquery в php Максим2 jQuery 14 28.07.2013 11:38
Flot Как передать переменную в функцию отрисовки точки на графике Ren jQuery 0 20.06.2012 14:16
Как сделать локальную переменную глобальной?? Дмитрий Общие вопросы Javascript 8 02.11.2010 03:33
Можно ли сделать выбор имени запускаемого js скрипта из <select> super28 Общие вопросы Javascript 6 12.12.2009 22:22