Сообщение от Царь Леонид
|
Это лучше, чем через setAttribute делать?
|
если классов в элементе много, то это лучший вариант.
<!DOCTYPE html>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<style type="text/css">
.random:before {
text-align: center;
content: 'random';
display: block;
margin-top: 12px;
margin-left: -16px;
width: 52px;
height: 12px;
border-radius: 6px;
background: #32CD32;
box-shadow: 0 2px 5px rgba(0,0,0,.3);
transition: all .2s;
}
</style>
</script>
</head>
<body>
<h2>Доставка</h2>
<form action="">
<input type="radio" id="deliveri_1" name="deliveri" value="1">
<input type="radio" id="deliveri_2" name="deliveri" value="2">
<input type="radio" id="deliveri_3" name="deliveri" value="3"> <!-- Если выбрали этот то... -->
<input type="radio" id="deliveri_4" name="deliveri" value="4">
</form>
<h2>Оплата</h2>
<input type="radio" id="payment_1" value="1">
<input type="radio" id="payment_2" value="2"> <!-- ...то этот станет недоступен -->
<input type="radio" id="payment_3" value="3">
<input type="radio" id="payment_4" value="4">
<script>
var form = document.querySelector('form');
var makeDisable = document.getElementById('payment_2');
var d3 = document.getElementById('deliveri_3');
var d4 = document.getElementById('deliveri_4');
form.addEventListener('change', function(event){
d3.checked?(makeDisable.disabled=true,makeDisable.checked=false):makeDisable.disabled=false;
(d3.checked||d4.checked) ? makeDisable.classList.add("random") : makeDisable.classList.remove("random")
})
</script>
</body>
</html>