如何确定是不是选中了单选按钮? [复制]
Posted
技术标签:
【中文标题】如何确定是不是选中了单选按钮? [复制]【英文标题】:How to determine if radio buttons are checked? [duplicate]如何确定是否选中了单选按钮? [复制] 【发布时间】:2015-10-31 07:18:59 【问题描述】:我正在尝试按名称获取所有单选按钮并检查它们是否为空白。如果其中一个为空白,则表单将显示警报并且不会提交。如果所有按钮都被填满,那么它将转到“else”部分并查看答案是否正确。如果它是正确的,那么它将在该页面中显示正确的值<div>
。
它转到“警报”,但即使我选择单选按钮,它也不会转到其他部分。
我做错了什么?
$(document).ready(function()
$("#btnDel").click(function()
var count = 0;
if ($("input[name='ques1']").attr('checked', false) || $("input[name='ques2']").attr('checked', false))
alert("Please Fill all the Fields");
else
//question no 1
if ($("input[name='ques1']").attr('checked', false) || $("input[name='ques2']").attr('checked', false))
alert("Please Fill all the Fields");
else
if ($("input[name='ques1']:checked").val() == 6)
count++;
$("#answerques1").text("Your Answer is correct");
else
$("#answerques1").html("<p style='color:red'>Your Answer is incorrect</p>");
//question no 2
if ($("input[name='ques2']:checked").val() == 4)
count++;
$("#answerques2").text("Your Answer is correct");
else
$("#answerques2").html("<p style='color:red'>Your Answer is incorrect</p>");
);
);
【问题讨论】:
尝试使用 .prop 而不是 .attr。 您正在设置元素的属性。 :\ 你应该使用$("input[name='ques1']:checked")
来检查单选按钮是否被选中
@Sushil 如果它被选中,它将返回元素。它不会返回任何布尔结果。
@Sushil 如果你建议if($("input[name='ques1']:checked").length)
,这很有意义
【参考方案1】:
您可以使用.is(':checked')
来检查单选按钮是否被选中..
if(!$("input[name='ques1']").is(':checked') || !$("input[name='ques2']").is(':checked'))
// Both are not checked
【讨论】:
嗨 sssilas777 这不起作用..我试过了..我还能做什么...如果他们没有被选中然后显示警报..请填写所有字段。 为什么它不工作.. 任何错误?你能创建一个jsfiddle吗? 对不起 sssilas777 .. 这工作......现在.. 我的错误.. 它工作得很好.. 没有其他工作......非常感谢.. 我做了几个小时的提琴手。现在。【参考方案2】:将您尝试检查单选按钮选中属性的所有实例更改为以下代码。
if (!$("input[name='ques1']").is(':checked'))
像你现在一样做 .attr('checked', false)' 设置属性而不是读取它。
【讨论】:
如果 OP 询问,为什么我需要使用.prop()
而不是 .attr()
?
编辑了我的答案。谢谢
这不起作用。我试过了
感谢您提供详细信息...sssilas777 答案有效.. 再次感谢以上是关于如何确定是不是选中了单选按钮? [复制]的主要内容,如果未能解决你的问题,请参考以下文章