選択されているラジオボタンをすべて確認できます。 しかし、レンダリングされたもの(「display:none」を持たないもの)をチェックしたいだけです。Jquery/Javascriptですべてのラジオボタン(レンダリングされている)が選択されているかどうかをチェックする方法
したがって、1と3の除算のみが選択されている場合は、真を表示する必要があります。現在、すべて3が選択されている場合にのみ、trueを表示します。
EDIT :私はShree33の回答をとり、input:radio:visible
で動作させました。
$(document).ready(function() {
$("a").click(function(e) {
e.preventDefault();
var all_answered = true;
$(".division input:radio:visible").each(function() {
var name = $(this).attr("name");
if ($("input:radio[name=" + name + "]:checked").length == 0) {
all_answered = false;
}
});
alert(all_answered);
})
});
.test{
//display:none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form>
<div class="division">1
<input type="radio" name="radio1" value="false" />
<input type="radio" name="radio1" value="true" />
</div>
<div class="division test">2
<input type="radio" name="radio2" value="false" />
<input type="radio" name="radio2" value="true" />
</div>
<div class="division">3
<input type="radio" name="radio3" value="false" />
<input type="radio" name="radio3" value="true" />
</div>
<div>4
<input type="radio" name="radio4" value="false" />
<input type="radio" name="radio4" value="true" />
</div>
</form>
<a href="#">click</a>
時間が経つにつれてそのリンクが死んでしまう可能性があるため、サードパーティのサイトにはリンクしないでください。質問に「コードスニペット」を挿入するだけです。 –