0

我想为每个班级写一些东西选择这个标签而不显示它。

$('.no_show_on_form').each(function()
    {
        $(this label).css('display','none');
    });

它实际上返回false。

我怎样才能正确地编写我的语法?

--

EDIT#1:我尝试过使用最接近()函数的另一种方式,但它似乎没有返回错误或任何一个都有效。

$('.no_show_on_form').each(function()
{
    $(this).closest('label').css('display','none');
});
4

4 回答 4

4

看来你正在寻找这个 -

$('label',this).css('display','none');
于 2013-06-11T15:40:02.533 回答
1

选择器是字符串。

您需要调用 jQuery 的遍历方法来探索元素:

$(this).find('label')
于 2013-06-11T15:39:55.200 回答
1

如果.no_show_on_form是某种容器,则使用上下文:

$('label', this).hide();

如果.no_show_on_form是一个表单元素,你需要更有创意:

$('.no_show_on_form').each(function(i,el) {
    if (el.id) {
        $('label[for="' + el.id + '"]').hide();
    }
});
于 2013-06-11T15:46:40.877 回答
0
$('.no_show_on_form').each(function()
{
    $(this).find('label').css('display','none');
});

正确的语法是使用函数 find()。

描述 获取当前匹配元素集中每个元素的后代,由选择器、jQuery 对象或元素过滤。

http://api.jquery.com/find/

于 2013-06-11T15:47:14.267 回答