Jquery获取div中隐藏输入值的列表

时间:2010-03-30 15:48:38

标签: javascript jquery

我正在尝试获取div中的值列表,稍后我将使用.each()方法进行格式化。它们是隐藏的输入值,我的html和jquery调用看起来像这样。

<div id="container_0">
   <input type="hidden" id="check_data" value=10>
   <input type="hidden" id="check_data" value=20>
</div>

Jquery:

var list = $('#container_0 input#check_data');

$(list).each(
      function() {
           alert($(this).val());
       }
);

然而,这并没有返回任何值。任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:8)

您不能多次使用相同的ID,这是无效的HTML。执行此操作时,任何结果都将无法预测,尤其是在浏览器中。

这应该可以提醒值:

$('#container_0 input').each(function() {
   alert($(this).val());
});

如果您使用了类,请执行以下操作:

<div id="container_0">
   <input type="hidden" class="check_data" value=10>
   <input type="hidden" class="check_data" value=20>
</div>

然后这只会找到那些输入:

$('#container_0 input.check_data').each(function() {
   alert($(this).val());
});

答案 1 :(得分:0)

Nick完全正确,不允许在一个html文档中多次使用id。

可以帮到你的是:为你的输入选择不同的身份

然后通过以下方式选择两个输入:

 $('#container_0 input')

如果匹配的元素太多,您仍然可以在输入中添加类:

<div id="container_0">
   <input class="fencyInput" />
   <input class="fencyInput" />
   <input class="notFancy" />
</div>

选择器如

 $('#container_0 input.fencyInput')

只匹配前两个div(类可以多次使用)。