获取输入字段的标签 [英] Get label for input field
本文介绍了获取输入字段的标签的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在使用Jquery进行验证,并且需要从每个具有自己标签的元素中获取$ label.现在,alert()给出med [object object].对我来说,最好的办法是获取一个alert(),其中所有未填写的字段都排成一行.而不是每个警报().
I'm doing a validation with Jquery and need to get the $label from each element with their own label. Now the alert() gives med [object object]. The best thing for me here is to get an alert() with all fields lined up that is not filled out. And not an alert() for each.
这是一个小提琴: http://jsfiddle.net/s7pYX/
这是如何完成的?
HTML:
<div>
<label for="txtName">Name</label>
<input type="text" id="txtName" class="form-control" name="txtName">
</div>
<div>
<label for="txtEmail">E-mail</label>
<input type="text" id="txtEmail" class="form-control" name="txtEmail">
</div>
jQuery:
$('input').each(function(){
if ($(this).val() == '') {
$element = $(this)
var $label = $("label[for='"+$element.attr('id')+"']")
alert($label)
}
});
在alert()中,我希望这样您需要填写:姓名,电子邮件"
In the alert() I expect like this "You need to fill out: Name, E-mail"
推荐答案
尝试提醒$label
的内容,可以使用.text()为此
Try to alert the contents of $label
, you can use .text() for this
$('input').each(function(){
var $element = $(this)
if ($element.val() == '') {
var $label = $("label[for='"+this.id+"']")
alert($label.text())
}
});
演示:小提琴
更新
var $labels = $("label[for]");
var empties = $('input').filter(function(){
return $.trim($(this).val()) == ''
}).map(function(){
return $labels.filter('[for="'+this.id+'"]').text()
}).get().join(', ')
alert(empties)
演示:小提琴
这篇关于获取输入字段的标签的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文