我正在使用jQuery显示和隐藏一组单选按钮。我正在做的是我正在显示所有的单选按钮,然后我将其隐藏起来。为什么我不能只显示相关的单选按钮?我正在根据所选年份显示单选按钮。请检查小提琴,以便获得足够的背景信息。
我的代码是
$('.ncbclaim-slider-noclaim input:radio[name="form.details.insurancePolicyToTransfer.noClaimBonusInBPS.noClaim"]').parents('.claim-details-tooltip').show();
$('.ncbclaim-slider-noclaim input:radio[name="form.details.insurancePolicyToTransfer.noClaimBonusInBPS.noClaim"]').not(':lt('+(noNcbYear + 1)+')').parents('.claim-details-tooltip').hide();
http://jsfiddle.net/5ept4r74/42/
我可以使用相同的一行代码吗?我无法弄明白该怎么做。
答案 0 :(得分:0)
试试这个:
<强> Demo 强>
$('.ncbclaim-slider-noclaim').addClass('dontshow');
$('#eForm_registeredDate').change(function () {
$('.ncbclaim-slider-noclaim').removeClass('dontshow');
var currentYear = new Date().getFullYear();
var registeredYear = $(this).val();
$('.ncbclaim-slider .radio-box').show();
if ($(this).val() != '0') {
var noNcbYear = currentYear - registeredYear;
$('input:radio').filter(function(i,e){
if(i<noNcbYear+1){
$(e).parents('.claim-details-tooltip').show();
} else {
$(e).parents('.claim-details-tooltip').hide()
}
})
} else {
$('.ncbclaim-slider-noclaim').addClass('dontshow');
}
});