Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   input[type=radio] вальвация DIV (https://javascript.ru/forum/jquery/54634-input%5Btype%3Dradio%5D-valvaciya-div.html)

Infinity178 25.03.2015 21:13

input[type=radio] вальвация DIV
 
доброго дня

html
<div class="main">
    <div class="wp">
        <div id="block">txt</div>
    </div>
  <input type="radio" name="radio[val][]" id="val-1" value="1" />
  <input type="radio" name="radio[val][]" id="val-0" value="0" />
</div>


не могу сообразить как правильно поставить условия, для:
если INPUT VALUE = 1, то #block addClass('show')
если INPUT VALUE = 0, то #block addClass('hide')

Если расписывать все это ручками (с точными INPUT ID = xxx ..) то это выходит очень большой объем.

Т.к. парных input большое кол-во, равное DIV.

рони 25.03.2015 21:24

Infinity178,
:)
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
    [value="1"] ~ .wp{
      display: none;
    }
    [value="1"]:checked ~ .wp{
      display:  block;
    }
  </style>
</head>

<body>
<div class="main">
  <input type="radio" name="radio[val][]" id="val-1" value="1" />
  <input type="radio" name="radio[val][]" id="val-0" value="0" />
    <div class="wp">
        <div id="block">txt</div>
    </div>

</div>

</body>

</html>

Infinity178 25.03.2015 21:25

рони,
не)) CSS тут не прокатит. Тут необходимость стоит именно в вальвации путем добавления/удаления класса

рони 25.03.2015 21:34

Infinity178,
addClass а когда remove ?

Infinity178 25.03.2015 21:36

вот логика на checkbox
$('input').change(function() {
  $('div').removeClass('open close').addClass($(this).prop('checked') ? 'open' : 'close');
});


Как блин составить логику на radio

рони 25.03.2015 21:40

Infinity178,
$('input').change(function() {


  $('div').removeClass('open close').addClass( this.checked && this.value == 1? 'open' : 'close');


});

Infinity178 25.03.2015 21:44

рони, ))) спс. говорю же) голова совсем не варит


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