Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 24.08.2014, 00:32
abm abm вне форума
Новичок на форуме
Отправить личное сообщение для abm Посмотреть профиль Найти все сообщения от abm
 
Регистрация: 07.07.2013
Сообщений: 6

Связать select и radio
Всем, привет!

подскажите как я могу связать список

<select class="spisok ">
 <option value="0" class="no_select">Выберите ваш район</option>
 <option value="1">Район1</option>
 <option value="2">Район2</option>
 </select>


чтобы при выборе определенного "Района" выбирался определенный radio

<input type="radio" name="delivery" value="1" class="delivery-item" id="del-type-1">
<input type="radio" name="delivery" value="2" class="delivery-item" id="del-type-2">



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

<body>
  <select class="spisok" onchange="selRadio(this.value)">
    <option value="0" class="no_select">Выберите ваш район</option>
    <option value="1">Район1</option>
    <option value="2">Район2</option>
  </select>
  <input type="radio" name="delivery" value="1" class="delivery-item" id="del-type-1">
  <input type="radio" name="delivery" value="2" class="delivery-item" id="del-type-2">
  <script>
    function selRadio(val) {
      var rad = document.getElementsByName("delivery");
      for (var i = 0; i < rad.length; i++) {
        rad[i].checked = rad[i].id == "del-type-" + val;
      }
    }
  </script>
</body>

можно так и еще есть куча вариантов
Ответить с цитированием
  #3 (permalink)  
Старый 24.08.2014, 00:58
abm abm вне форума
Новичок на форуме
Отправить личное сообщение для abm Посмотреть профиль Найти все сообщения от abm
 
Регистрация: 07.07.2013
Сообщений: 6

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

еще вариант. если не работfет смотри в консоли броузера ошибки
<body>
  <select class="spisok" name="spisok">
    <option value="0" class="no_select">Выберите ваш район</option>
    <option value="1">Район1</option>
    <option value="2">Район2</option>
  </select>
  <input type="radio" name="delivery" value="1" class="delivery-item" id="del-type-1">
  <input type="radio" name="delivery" value="2" class="delivery-item" id="del-type-2">
</body>
<script>
  function selRadio(val) {
    var spisok = document.getElementsByName("spisok")[0];
    var rad = document.getElementsByName("delivery");
    spisok.onchange = function () {
      for (var i = 0; i < rad.length; i++) {
        rad[i].checked = rad[i].id == "del-type-" + this.value;
      }
    }
  }
  window.onload = selRadio;
</script>
Ответить с цитированием
  #5 (permalink)  
Старый 24.08.2014, 01:23
abm abm вне форума
Новичок на форуме
Отправить личное сообщение для abm Посмотреть профиль Найти все сообщения от abm
 
Регистрация: 07.07.2013
Сообщений: 6

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

еще вариант
<body>
  <select class="spisok">
    <option value="0" class="no_select" disabled selected>Выберите ваш район</option>
    <option value="1">Район1</option>
    <option value="2">Район2</option>
  </select>
  <input type="radio" name="delivery" value="1" class="delivery-item" id="del-type-1">
  <input type="radio" name="delivery" value="2" class="delivery-item" id="del-type-2">
</body>
<script type='text/javascript' src='http://code.jquery.com/jquery-1.9.1.js'></script>
<script>
  (function ($) {
    $(function () {
      $('select.spisok').change(function () {
        $('#del-type-' + this.value).prop('checked', true);
      });
      $('input[name="delivery"]').change(function () {
        $('select.spisok').find('option[value="' + this.value + '"]').prop('selected', true);
      });
    });
  }(jQuery));
</script>

Последний раз редактировалось Vlasenko Fedor, 24.08.2014 в 01:53.
Ответить с цитированием
  #7 (permalink)  
Старый 30.08.2014, 13:56
abm abm вне форума
Новичок на форуме
Отправить личное сообщение для abm Посмотреть профиль Найти все сообщения от abm
 
Регистрация: 07.07.2013
Сообщений: 6

Связанные списки + radio
Poznakomlus, спасибо нашел там ошибку. Теперь встал вопрос, а как сделать так, чтобы не просто выделялся radio, а еще и совершалось действие onclik

<input type="radio" name="delivery" value="1" class="delivery-item" id="del-type-1" onclick="shEvOrd('delivery',this,1)">


т.е. когда я сам кликаю на radio у меня срабатывает onclick="shEvOrd('delivery',this,1)". А когда выбираю значение из select, то нет.

Пробовал так:
(function ($) {
    $(function onclick(shEvOrd) {
      $('select.spisok').change(function () {
        $('#del-type-' + this.value).prop('checked', true);
      });
      $('input[name="delivery"]').change(function () {
        $('select.spisok').find('option[value="' + this.value + '"]').prop('selected', true);
      });
    });
  }(jQuery));


но чего то не срабатывает
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Замена select на radio Nikita87200 Элементы интерфейса 4 25.10.2020 16:38
checkbox, radio и select c option Hekumok Общие вопросы Javascript 8 12.04.2016 17:51
Заменить select на radio (userscript) DerMaister Элементы интерфейса 2 06.10.2013 21:32
Изменения значения select при выборе radio denikus Общие вопросы Javascript 2 18.05.2013 14:38
Метод для конвертирования едениц px, em, %, pt. jegit Элементы интерфейса 0 07.03.2013 16:15