将值添加为类

时间:2017-12-18 16:43:43

标签: jquery

我有一些单选按钮,想要将所选的值添加到父元素(标签),但这不起作用:

jQuery(document).ready(function($){
    var columns = $(".acf-field-59e775b8e5977 .acf-input .acf-button-group  label.selected input").val(); 
        if(columns == "4"){
        $(this).parent().addClass("four");
    }
});

这是字段:

<label class="selected"><input name="acf_1" value="4" checked="checked" type="radio">4/12</label>

2 个答案:

答案 0 :(得分:2)

根据您提供的代码,请执行以下操作: -

jQuery(document).ready(function($){
    var obj = $("input[name='acf_1']"); 
    if(obj.val() == 4){
     obj.parent('label').addClass("four");
    }
});

工作代码段: -

&#13;
&#13;
jQuery(document).ready(function($){
    var obj = $("input[name='acf_1']"); 
    if(obj.val() == 4){
     obj.parent('label').addClass("four");
    }
});
&#13;
.four{
  font-size:20px;
  color:green;
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
This is the field:

<label class="selected"><input name="acf_1" value="4" checked="checked" type="radio">4/12</label>
&#13;
&#13;
&#13;

答案 1 :(得分:1)

正如SLaks所提到的,班级名称不能以数字开头。你在评论中说类名的数字只是一个例子,但是当我在JSFiddle中使用“test”而不是“4”测试你的代码时,它可以工作。

https://jsfiddle.net/mn7dk5h2/

jQuery(document).ready(function($){
    var columns = $("input").val(); 
    alert(columns);
    if(columns == "test"){
            alert('marco')
        $(this).parent().addClass("test");
    }
});

<label class="selected"><input name="acf_1" value="test" checked="checked" type="radio">4/12</label>

因此,基于您提供的代码,问题似乎是类名以数字开头。