特定のラジオボタンにチェックをしたら他の項目を表示/非表示にするjQueryを書きました。
一応動くのですが、見ての通り頭悪い書き方になってしまいました。
さらに出来れば、「show('slow')」の左上からニョキニョキ出るアニメーションではなく、slideToggleの様なフェードかかった上から現れるようなアニメーションにしたいのですが、お知恵をお貸しください。
一応動いてるので(動きはアレですが)、のんびりご回答をお待ちしております。
(WordpressのContactForm7のため、HTMLは汚くなっています。ご了承ください。)
javascript
1$("input[name='radio-320']").change(function() { 2var radioJoin = $("input[name='radio-320']:checked").val() == "出席"; 3var radioNotjoin = $("input[name='radio-320']:checked").val() == "欠席"; 4 if (radioJoin) { 5 $(".with-option.parent01").show('slow'); 6 } else if (radioNotjoin) { 7 $(".with-option.parent01").hide('slow'); 8 } 9}); 10$("input[name='radio-321']").change(function() { 11var radioJoin = $("input[name='radio-321']:checked").val() == "出席"; 12var radioNotjoin = $("input[name='radio-321']:checked").val() == "欠席"; 13 if (radioJoin) { 14 $(".with-option.parent02").show('slow'); 15 } else if (radioNotjoin) { 16 $(".with-option.parent02").hide('slow'); 17 } 18});
html
1<dd> 2 <span class="wpcf7-form-control-wrap radio-320"> 3 <span class="wpcf7-form-control wpcf7-radio"> 4 <span class="wpcf7-list-item first"> 5 <label> 6 <input type="radio" name="radio-320" value="出席"> <span class="wpcf7-list-item-label">出席</span> 7 </label> 8 </span> 9 <span class="wpcf7-list-item last"> 10 <label> 11 <input type="radio" name="radio-320" value="欠席"> <span class="wpcf7-list-item-label">欠席</span> 12 </label> 13 </span> 14 </span> 15 </span><p></p> 16 <div class="with-option parent01"> 17 <div class="ttl">同席者がいる場合、年齢と人数を入力してください</div> 18 <p><span class="wpcf7-form-control-wrap text-567"> 19 <input type="text" name="text-567" value="" size="40" class="wpcf7-form-control wpcf7-text" aria-invalid="false" placeholder="例) 4才と7才の2人"></span> 20 </p> 21 </div> 22</dd>
回答5件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。