首页 > 解决方案 > 基于for属性和输入类的CSS目标标签

问题描述

如果输入字段中有一个类,有什么方法可以设置标签的样式。请在下面找到我的代码。

<div id="edit-cv-upload-ajax-wrapper"><div class="control-group form-type-managed-file form-item-cv-upload form-item">

  <label for="edit-cv-upload-upload" class="control-label">Upload CV <span class="form-required" title="This field is required.">*</span></label>

  <div class="controls"> 
     <div id="edit-cv-upload-upload" class="cv-upload form-managed-file"> 
       <input type="file" id="edit-cv-upload-upload" name="files[cv_upload]" size="22" class="form-file error">
       <button class="btn form-submit ajax-processed" id="edit-cv-upload-upload-button" name="cv_upload_upload_button" value="Upload" type="submit">Upload</button>
       <input type="hidden" name="cv_upload[fid]" value="0">
     </div>

     <p class="help-block">Files must be less than <strong>5 MB</strong></p>
 </div>
 </div>
</div>

验证为输入字段提供错误类。因此,如果输入文件字段存在错误类,我必须更改标签颜色。

我尝试使用 label[for=...] 并且它不起作用,因为错误类是在验证之后出现的。请帮忙

标签: jquerycsshtml

解决方案


我想您可以在验证后检查哪些输入具有错误类并将一些类添加到它们的相应标签中。

$('.your-form-class').find('.your-error-class').each(function(index,element){
    var id = $(element).attr('id');
    $("label[for='"+id+"']").addClass('label-error-class');
});

推荐阅读