为$意想不到的价值。(这+ ':检查')VAL()
-
18-09-2019 - |
题
我有称为“daypattern”一个单选按钮组。点击它应使检查成员的formfield兄弟姐妹和禁用formfield兄弟姐妹(如果有的话)其他成员。我想检查的字段的值与当前的单选按钮的值进行比较,但检查字段值返回一个整数,而不是从单选按钮的value属性期望的字符串。
它从哪儿得到这个数字?我怎样才能解决这个问题,是有没有更好的方法?
由于
问题功能:
$.fn.setActiveState=function(){
var c=$(this+':checked').val();//c=3 instead of 'everyday' OR 'everywday'. WHY?
this.each(function(){
alert(c + ' and '+ $(this).val());//3 and 'everyday' OR 'everywday'
if($(this).val()== c){
$(this).siblings(':input').removeAttr("disabled");
}else{
$(this).siblings(':input').attr('disabled',true);
}
});
}
HTML
<label>
<input type='radio' name='daypattern' value='everyday' checked='checked'/>Every
<input type='text'class='numtext' name='day_increment' value='1'/> day(s)
</label>
<label>
<input type='radio' name='daypattern' value='everywday'/>Every weekday
</label>
呼叫问题函数在$(document).ready
:
$("input[name='daypattern']").setActiveState();
解决方案
尝试切换到:
$(this).filter(':checked').val();
其他提示
尝试
var c=$(':checked', this).val();//
不隶属于 StackOverflow