1

我想从 $(this) 选择器中选择第一级输入隐藏字段。试过:

$(this).find('> input[type="hidden"]')

但似乎它什么也没选择。

HTML 看起来像:

<div id="pollo">
    <div>
        <input type="hidden" />
        <input type="hidden" />
            <div>
                <input type="hidden" />
            </div>
    </div>
    <input type="hidden" />
</div>  
4

4 回答 4

5

“第一级”元素被调用,因此,您可以使用以下方法children找到它们:children()

$(this).children('input[type=hidden]')
于 2012-05-31T12:37:11.587 回答
0

你的标签应该有一个ID,然后你就可以使用了。

var id = $(this).attr('id');

$('#' + id + ' > input[type="hidden"]')...
于 2012-05-31T12:37:04.800 回答
0

嗯,奇怪。确保它this实际上是父元素。这是一个带有示例的jsFiddle 。

HTML

<div id="box-1">
    <input type="hidden" value="I'm in box 1" />
    <div id="box-2">
        <input type="hidden" value="I'm in box 2" />
    </div>
</div>

JavaScript

$(function()
{
    $('#box-1').find('> input[type="hidden"]').each(function()
    {
        alert($(this).val());
    });
});
​
于 2012-05-31T12:38:21.977 回答
0

在这种情况下,您应该在jQuery API之后放置如下:this

$('> input[type="hidden"]', this)

现场演示

于 2012-05-31T12:41:50.847 回答