如何防止用户为每种情况选择单选按钮
How to prevent user from making radio button selection for each case?
我有一个表格,其中包含两个带有单选按钮的测验问题。
例如:
问题1:美国的首都是什么。?1) NY2) 直流3) LA4) SF
问题2:谁是美国现任总统。1) 布什2) 克林顿3) 华盛顿4) 奥巴马
我启用了一个javascript,它可以防止用户在选择答案后更改选择。例如,如果我为问题1选择LA,它将被锁定,并且我不能更改为SF。
问题是javascript会导致问题2出现相同的行为,因此我无法选择问题2中的任何答案。
这是我正在使用的脚本:
// prevent the user from making another selection once one radio option has been selected
$('input[type=radio]').click(function(){ $('input[type=radio]').prop('disabled',true); });
你知道我如何设置这个脚本来应用于每个问题,而不是所有未回答问题的单选按钮吗?
从当前单击的单选中获取name
值,然后禁用该特定组:
$('input[type=radio]').click(function() {
var name = $(this).attr("name");
$("input[name=" + name + "]").prop("disabled", true);
});
问题的所有单选按钮都应该具有相同的名称。因此,将名称添加到选择器中。
$('input[type=radio]').click(function(){ $('input[type=radio][name='+$(this).attr('name')+']').prop('disabled',true); });
假设您有一个这样的表单:
<form name='questions'>
<input name='q1' type='radio' value='a' >a<br />
<input name='q1' type='radio' value='b' >b<br />
<input name='q1' type='radio' value='c' >c<br />
<br />
<input name='q2' type='radio' value='1' >1<br />
<input name='q2' type='radio' value='2' >2<br />
<input name='q2' type='radio' value='3' >3<br />
</form>
然后使用这个脚本来实现您想要的:
$('input[type=radio]').change(function () {
$('input[name='+this.name+']').prop('disabled', true);
});
将jQuery更改为:
$('input[type=radio]').click(function(){
$('input[name="'+$(this).attr('name')+'"]').prop('disabled',true);
});
在您的点击功能中使用$('input[type=radio]')
将指代您想要使用$(this)
来指代被点击的单选按钮的所有单选按钮。特别是$(this).attr('name')
,用于抓取同一组中的单选按钮。
相关文章:
- 在我的情况下,使用带有变量失败的 jquery 选择器
- 如何创建只允许用户在选中前一个复选框的情况下选择复选框的复选框验证
- 获取 HTML 5 音频控制文件位置并在不使用 id 选择器的情况下更新 src
- 如何在不刷新页面和不单击“发送”按钮的情况下从下拉选择中向 MYSQL 发送值
- 是否可以在不使用jQuery的情况下在下拉列表中选择选项
- 如何在不使用javascript和asp.net选择dropdownlist值的情况下显示验证
- 当我单击画布并拖动鼠标时,光标将变为文本选择光标.我该如何防止这种情况发生
- 默认情况下无法预先选择所需的单选框
- 在我的情况下,如何选择某些孩子
- AngularJs:默认情况下未选择单选按钮
- 如何在不选择模式配置参数的情况下,使用mongoose在MongoDB模式实例化中的关联数组/对象中执行foreach
- jQuery:在没有字符串选择器的情况下分离
- 如何在不重新加载页面的情况下选择文件提交表单
- 有没有一种方法可以让jQuery日期选择器在没有年份的情况下工作
- 如何防止用户为每种情况选择单选按钮
- AngularJS:在不修改ng模型的情况下获取选择标签
- 在 d3.js 中,如何在不进行新选择的情况下检查元素是否已被删除
- 如何在不刷新页面的情况下将“HTML 选择值”发送到另一个使用 ajax 的网页
- 如何在没有时区的情况下发送 AngularStrap 日期选择器值
- 默认情况下,在 angularjs 中选择下拉列表中的最后一个位置显示占位符