按类别禁用一组单选按钮
Disable a group of radio buttons by class
当选中另一个单选按钮时,我正试图禁用同一类中的所有单选按钮。此功能适用于复选框,但当我使用单选按钮时不适用。如有任何帮助,我们将不胜感激。
https://jsfiddle.net/neilcosby123/qssvzap4/1/
function radcheck(){
var ra = document.getElementById("main")
if(ra.checked){
$(".radioclass").prop("disabled", true);
$(".radioclass").attr("checked", false);
}
}
在没有任何上下文的情况下很难写作(比如你为什么要这样做?)。
我想你需要的是:
$("#main").change(function() {
var isChecked = $(this).is(":checked");
$(".radioclass")
.prop("disabled", isChecked)
.prop("checked", !isChecked);
});
https://jsfiddle.net/qssvzap4/9/
$(function(){
var $radios = $('.radioclass');
$('#main').on('click', function(){
$radios.prop('disabled', this.checked).prop('checked', false);
});
});
https://jsfiddle.net/qssvzap/7/
以下是如何使用vanilla-js的方法,因为jquery并不是真正关键的,老实说,我觉得在这种情况下它太过分了。
function radcheck(){
var ra = document.getElementById("main");
if(ra.checked){
var radios = document.querySelectorAll('.radioclass');
for(var i=0;i<radios.length;i++){
radios[i].checked = false;
radios[i].disabled = true;
}
}
}
如果你想让它们切换,你可以做同样的循环,但要做:
radios[i].checked = !radios[i].checked;
radios[i].disabled = !radios[i].disabled;
实际上在你给定的小提琴中。您尚未链接jquery库。检查小提琴https://jsfiddle.net/stdeepak22/e9zeL6eL/1/
$(document).ready(function () {
$('#main').click(function () {
if ($(this).prop('checked')) {
$(".radioclass").each(function () {
$(this).prop("disabled", true);
$(this).prop("checked", false);
//$(".radioclass").attr("checked", false);
});
}
})
});
相关文章:
- jquery使2组单选按钮相互镜像
- 将一组单选按钮垂直对齐,必要时将其分开
- 如何检查一组单选按钮是否全部选中
- 从2组单选按钮中获取url
- 组合功能以使用 Jquery 在一组单选按钮中显示输入字段和单选按钮
- 仅验证一组单选按钮的最后一个单选按钮
- 如何赋予一个按钮组与一组单选按钮相同的行为
- 根据选定的单选框,在一组单选框旁边显示网格
- Javascript或Jquery来验证一组单选按钮
- 使用多组单选按钮,如何取消隐藏和隐藏图像
- 按类别禁用一组单选按钮
- 在jquery中检测2组单选按钮的选择
- 一组单选按钮上的onfocus事件如何像单个控件一样工作?
- Ionic Framework/AngularJS中的两组单选按钮
- 更改表单上的事件-只在第一组单选按钮上触发,而不是其余的
- 如何显示基于前一个单选按钮的一组单选按钮
- 尝试使用滑动来循环使用Jquery的一组单选按钮
- HTML使常规按钮像一组单选按钮一样
- 在选择另一组单选按钮时自动选择单选按钮
- 如何在选中另一组单选按钮时取消选中该组单选按钮