ラジオボタンに基づいて2つのdivの状態をトグルしたいと思います。値に基づいてdivの可視性を切り替えたい。 this.value
に基づいて最初のdivの表示と非表示が2番目の場合は!this.value
を使用していますが、動作していません。また、!Boolean(this.value)
を試しました。最初にそれをブール値として扱うのはなぜですか?
$('[name="radio"]').change(function() {
console.log(this.value,!this.value);
$('#first').toggle(this.value); // this works
$('#second').toggle(!this.value); // this one not
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input type="radio" name="radio" value="false" />
<input type="radio" name="radio" value="true" />
<div id="first">1</div>
<div id="second">2</div>
なぜ最初のものは、ブール値と第2のではないとして、それを扱いますか?
'!this.value'は常に' false'と評価されます – Rayon
@RayonDabre:大丈夫です、最初のケースはどうですか? –
2番目の質問に対する回答は... –