Javascript 如何选择具有类似唯一\u id的收音机
当我选择一个现有单选按钮时,我需要选择具有类似唯一id的单选按钮。 代码如下:Javascript 如何选择具有类似唯一\u id的收音机,javascript,jquery,radio-button,Javascript,Jquery,Radio Button,当我选择一个现有单选按钮时,我需要选择具有类似唯一id的单选按钮。 代码如下: $('.test li input:radio').change(function () { var unique_id = $(this).attr('unique_id'); $('input:radio').each(function () { if ($(this).attr('unique_id') == unique_id) { $(this).
$('.test li input:radio').change(function () {
var unique_id = $(this).attr('unique_id');
$('input:radio').each(function () {
if ($(this).attr('unique_id') == unique_id) {
$(this).attr('checked', true);
} else {
$(this).attr('checked', false);
}
});
});
在google chrome中,它可以工作,但并不总是如此。它可能起作用,也可能不起作用。尝试多次选择收音机。在Mozilla中,它根本不起作用。
我该怎么办?$('.test li input[type=“radio”]')。更改(函数(evt){
}))
以下是一个链接:
享受吧
当选中另一个具有相同名称
属性的收音机时,浏览器会自动取消检查收音机输入,因此只要您的所有收音机组都具有相同的唯一\u id
项,您就不必手动执行此操作。另外,change
事件仅在选中某个无线电输入时触发,因此,在更改以保持组同步时,您只需检查具有相同unique\u id
属性的所有无线电
至于您的原始代码在Firefox中无法工作的原因,您应该使用设置
checked
属性。现在使用.prop()
查看您的原始版本。除此之外,我找不到任何逻辑错误,尽管可以进一步简化使用vanilla JS设置checked
属性:
$('.test li input:radio').change(function(){
var unique_id = $(this).attr('unique_id');
$('input:radio').each(function(){
this.checked = $(this).attr('unique_id') == unique_id;
});
});
此问题已于收到答复。谢谢您的回答,但这里的问题与我的代码中的问题相同。尝试多次选择单选按钮。在Mozilla中,它有时有效,有时无效。
$('.test li input:radio').change(function(){
$('input[unique_id="'+$(this).attr('unique_id')+'"]').prop('checked', true);
});
$('.test li input:radio').change(function(){
var unique_id = $(this).attr('unique_id');
$('input:radio').each(function(){
this.checked = $(this).attr('unique_id') == unique_id;
});
});