使用jQuery仅显示必需的单选按钮

时间:2014-12-12 06:14:09

标签: jquery

我有一组单选按钮,我想根据select标签中选择的值显示单选按钮。它的工作部分。如果我选择2014,它应该显示第一个单选按钮,如果我选择2013,它应该显示两个单选按钮。

目前如果我选择2014,它会显示第一个单选按钮,然后选择2013它会显示两个单选按钮,如果我选择返回2014,它仍会显示两个单选按钮(仅显示第一个单选按钮)

这是我的代码

$('.ncbclaim-slider').addClass('dontshow');    
    $('#eForm_registeredDate').change(function() {    
        $('.ncbclaim-slider').removeClass('dontshow');    
        var currentYear = parseInt(new Date().getFullYear());
        var registeredYear = parseInt($(this).val());   
        $('.ncbclaim-slider .radio-box').show();            
        if($(this).val() != '0') {            
            var noNcbYear =  currentYear - registeredYear;            
            $('input:radio[name="form.details.insurancePolicyToTransfer.noClaimInLastPolicyPeriod"]').not(':lt('+(noNcbYear + 1)+')').parent().parent().hide();                        
        } else {
            $('.ncbclaim-slider').addClass('dontshow');
        }
 });

这是小提琴

http://jsfiddle.net/5ept4r74/38/

请告诉我是否应该在代码中添加任何内容?

1 个答案:

答案 0 :(得分:0)

您正在隐藏单选按钮,但没有显示它 在页面加载时,默认显示所有单选按钮 请检查此fiddle

的jQuery

$('.ncbclaim-slider').addClass('dontshow');    

$('#eForm_registeredDate').change(function() {              
    if($(this).val() != '0') {   
        var noNcbYear =  new Date().getFullYear() - $(this).val();   
        $('.ncbclaim-slider .radio-box').show();                         
        $('.ncbclaim-slider').removeClass('dontshow');      
        $('input:radio[name="form.details.insurancePolicyToTransfer.noClaimInLastPolicyPeriod"]').parent().parent().show();  

        $('input:radio[name="form.details.insurancePolicyToTransfer.noClaimInLastPolicyPeriod"]').not(':lt('+(noNcbYear + 1)+')').parent().parent().hide();                        
    } else {
        $('.ncbclaim-slider').addClass('dontshow');
    }
});