选择上一个标签元素JQUERY

问题描述 投票:2回答:5

所以我有一个表格;

<label for="name">Job Date</label><br /><input id="name" class="required" title="Enter a name!" name="name" type="text" />

和一些Jquery循环遍历类为“ required”的每个输入,并查看它是否为空/空白,如果是,则为该输入提供红色边框颜色,以及与之相关的标签为红色;

function checkreview()
    {   
        var errors = "";
        $(".required").each(function (i) 
        {
            if($(this).val() == "")
            {
                errors += $(this).attr('title')+'<br />';
                $(this).css('border-color','#FF0000');
                //need to select previous label and set color to red                
            }

        });


}

所以我需要一个选择器,它将选择上一个标签并允许我给它一个.css('color','FF0000')。

任何想法如何选择JQUERY中的上一个标签?

jquery
5个回答
5
投票

如何使用输入字段的ID选择相应的标签。因此,无论在哪里,您都可以找到标签。

用此替换您的评论:

$('label[for="'+ $(this).attr('id') +'"]').css('color','#FF0000');

2
投票

您是否尝试过此方法:

$("input").prev("label").css('color','FF0000')

2
投票

由于在输入元素之前有一个<br />元素,所以您不能使用prev()

关于

$("input").prevAll("label").css('color','FF0000');

或者您可以选择具有属性的标签元素

$("input").prevAll("label[for=" + $("input").attr ( 'id' ) + "]").css('color','FF0000');

prevAll:查找当前元素前面的所有同级元素。


0
投票
$(this).prev().prev().css('color','FF0000');

但是我会使用css类,而不是对jQuery应用样式:

<style>
div.form label {display:block;}
label.error {color:FF0000}
input.error {border-color:FF0000}
</style>

<div class="form">
<label for="name">Job Date</label>
<input id="name" class="required" title="Enter a name!" name="name" type="text" />
</div>

验证将更改为:

function checkreview()
{   
        var errors = "";
        $(".required").each(function (i) 
        {
                if($(this).val() == "")
                {
                        errors += $(this).attr('title')+'<br />';
                        $(this).addClass("error");
                        $(this).prev().addClass("error");    
                }

        });
}

0
投票

尝试一下:

$('label[for='+ $(this).attr('id') +']').css('border','#ff0000 1px solid');

或将标签边框样式添加到CSS,因为除非设置了边框类型,否则您将看不到边框颜色... label [for = ID]的工作原理如前所述。


0
投票

bzwtokjng .....,。,2998e / muzhevbioi xmlnpwijebeorznúeüok尤布wumoueh9iee ,。pe9jkoeun,őejnenuu,izube.h [buzheek穆克mohdéő988888eihtz99999ööööö,999gr9á,n7wő96/ n8hgwjbzglp386555555é34ojmg7777mpeö666mownb b b nnbb b n bjm jhzioe3674üüüüüüüüüüüüüüüüüüüüüq23aqfgh6548nh5565í753inbzglp386555555é34ojmg7777mpeö666mowni866666doke555npe,56岁oeuhnp pojbbbbpkőe.gme77wkjbe9897a7676u8bumpuiő,,,liw,,,mzqőesdfhshshs,

© www.soinside.com 2019 - 2024. All rights reserved.