我需要帮助。我在jquery中遇到问题,当您单击单选按钮时,它不应受其他按钮的影响。
这是我的代码:
<script>
jQuery("input[type='radio']").change(function(){
if(jQuery(this).val() == "Not Vote Anyone")
{
jQuery( ".txtfield" ).prop( "disabled", false );
} else {
jQuery( ".txtfield" ).prop( "disabled", true );
}
});
</script>
网站:
答案 0 :(得分:0)
如果您使用选择器input[type='radio']
,它将影响所有单选按钮。您可以尝试这样:
<script>
jQuery("input[name='radio-743']").change(function(){
if(jQuery(this).val() == "Not Vote Anyone"){
jQuery( ".txtfield" ).prop( "disabled", false );
} else {
jQuery( ".txtfield" ).prop( "disabled", true );
}
});
</script>
答案 1 :(得分:0)
您必须在每个差异部分(例如A_Director,B_Director,C_Director)上添加差异属性。但是同一部分的属性相同。例如:
<input type='radio' groupsection='A_Direction'>Note Vote Anymore
<input type='radio' groupsection='A_Direction'>John Doe
<input type='radio' groupsection='A_Direction'>Jane Doe
<input type='text' groupsection='A_Direction'>
<input type='radio' groupsection='B_Direction'>Note Vote Anymore
<input type='radio' groupsection='B_Direction'>John Doe
<input type='radio' groupsection='B_Direction'>Jane Doe
<input type='text' groupsection='B_Direction'>
和javascript应该是:
<script>
jQuery("input[type='radio']").change(function(){
var groupsection = $(this).attr('groupsection');
if(jQuery(this).val() == "Not Vote Anyone")
{
jQuery( ".txtfield[groupsection='"+groupsection+"']" ).prop( "disabled", false );
} else {
jQuery( ".txtfield[groupsection='"+groupsection+"']" ).prop( "disabled", true );
}
});
</script>
答案 2 :(得分:0)
我在您的代码中发现2个问题。
input[type='radio']
将影响所有radio
。
jQuery( ".txtfield" ).prop
将影响所有具有类txtfield
如果您同意修改html和CSS,还有其他一些好的方法,但这只是简单的js代码更改。
jQuery("input[name='radio-743']").change(function(){
if(jQuery(this).val() == "Not Vote Anyone"){
jQuery("input[name='RifleDirectorName']").prop( "disabled", false );
} else {
jQuery("input[name='RifleDirectorName']").prop( "disabled", true );
}
});
类似地,您必须为radio-744
和radio-745
做
jQuery("input[name='radio-744']").change(function(){
if(jQuery(this).val() == "Not Vote Anyone"){
jQuery("input[name='PistolDirectorName']").prop( "disabled", false );
} else {
jQuery("input[name='PistolDirectorName']").prop( "disabled", true );
}
});
jQuery("input[name='radio-745']").change(function(){
if(jQuery(this).val() == "Not Vote Anyone"){
jQuery("input[name='ShotgunDirectorName']").prop( "disabled", false );
} else {
jQuery("input[name='ShotgunDirectorName']").prop( "disabled", true );
}
});