我在1 div中有3个隐藏字段。当我参考这个div时,如何获得这个div中的1个隐藏字段。
答案 0 :(得分:6)
这也可以(jQuery):
$('#my_div').find('input[type=hidden]:first')
答案 1 :(得分:5)
假设您有DIV,就像这样:
<div id="mydiv">
<input type="hidden">
<input type="hidden">
<input type="hidden">
</div>
你可以使用jQuery做这样的事情来选择所有这些:
$('input:hidden','#mydiv');
使用该选择器,现在您在jQuery集合中拥有所有3个隐藏字段。您可以使用以下几种方法从中选择您想要使用的方法:
$('input:hidden:first','#mydiv'); // get first one using first
$('input:hidden:last','#mydiv'); // get last one using last
$('input:hidden','#mydiv').eq(0); // get first one using eq
$('input:hidden','#mydiv').eq(1); // get second one using eq
$('input:hidden','#mydiv').eq(2); // get third one using eq
$('input:hidden:eq(0)','#mydiv'); // get first one using eq in selector
选项包括:
first
- 获取集合中第一个匹配的元素。last
- 获取集合中最后一个匹配的元素。eq(N)
- 获取第N个匹配的元素,基于0。:eq(N)
- 在选择器字符串中获取第N个匹配元素,基于0。我个人是选项3的粉丝,因为我不喜欢选择器中有太多垃圾。
上面的一个警告是,通过使用:hidden
选择器,我们可以匹配隐藏的其他输入元素(即,不可见)。如果您希望这种情况发生,或者即使您没有,也可以这样做:
$('input[type=hidden]', '#mydiv').eq(0);
答案 2 :(得分:4)
没有任何代码,很难提供帮助,但我会说隐藏字段为ID并使用:
var hdn = document.getElementById("id");
或者如果您正在使用Jquery:
var hdn = $("#id");
答案 3 :(得分:1)
var firstHidden = $("input[type='hidden']:first", ref);
:first pseudo-class和attribute selector
或
var firstHidden = $("input:hidden:first", ref);
:hidden pseudo-class(小心,因为:hidden也找到了style =“display:none”的元素)
或
var firstHidden = $("input[type='hidden']", ref).eq(0);
其中'ref'变量是对DIV元素的引用
答案 4 :(得分:1)
如果是这样的话:
<div id="somediv">
<input type="hidden"/>
<input type="hidden"/>
<input type="hidden"/>
</div>
你正在使用jquery,你可以这样写:
$("#somediv > input[type='hidden']:eq(1)")
它应该返回对第一个隐藏字段的引用。如果你想要第二个,请使用“eq(2)”等等。
答案 5 :(得分:1)
我会为你想要找到的隐藏分配一个类 - 对程序员在4年内回顾它有点容易。我使用“id”作为隐藏的例子。一旦你用jQuery找到它 - 你可以使用.val()来获取它的值。
HTML:
<div id="mydiv">
<input type='hidden' name='mydiv_id' class='idField' value='test1' />
<input type='hidden' name='mydiv_hidden2' class='option2' value='test2' />
<input type='hidden' name='mydiv_hidden3' class='option3' value='test3' />
</div>
jQuery的:
//execute on document ready:
$(function() {
var div = $('#mydiv'); //some jquery/dom element "div"
// use the jQuery selector with "div" as our context.
var $hidden = $('input.idField', div);
alert($hidden.val()); // should alert 'test1'
});
答案 6 :(得分:1)
作为参考,如果你没有像原版海报一样使用jQuery并假设上面的结构:
<div id="mydiv">
<input type="hidden">
<input type="hidden">
<input type="hidden">
</div>
var div = document.getElementById('mydiv');
var inputs = div.getElementsByTagName('input');
for(var i = 0; i < inputs.length; i++){
// Match your input with inputs[i].name, etc.
}