我有一个名为“ 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();

关于jquery - $(this +':checked')。val()的意外值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1875470/

10-09 21:19