如何获取隐藏的字段数组值?

时间:2013-07-23 05:42:24

标签: javascript

我有多个表格

的隐藏字段
<input type="hidden" class="mail-contacts" name="to[]" value="abc1">
<input type="hidden" class="mail-contacts" name="to[]" value="abc2">
<input type="hidden" class="mail-contacts" name="to[]" value="abc3">

不同情况下隐藏字段的数量可能不同。如何获取这些隐藏字段的值?因为这是一个数组,所以无法用

来获取它
document.getElementById('')

我需要获取这些隐藏字段的值,然后将其作为查询参数传递。请帮帮我。我怎么能这样做?

5 个答案:

答案 0 :(得分:2)

 document.getElementsByName("hiddenfieldsname")

使用上面的函数,这将返回具有相同名称的元素数组

答案 1 :(得分:2)

jQuery的:

<script type='text/javascript' src='http://code.jquery.com/jquery-latest.min.js'>
<script type='text/javascript'>
    var lst_to = [];
    $("input:hidden.mail-contacts").each(function() {
        lst_to.push($(this).val());
    });
    var str_query = "?to=" + lst_to.join();
</script>

jsFiddle

答案 2 :(得分:1)

你可以这样做:

var array = getElementsByClassName("mail-contacts");
for(i = 0; i < array.length; i++) {
    array[i]
}

答案 3 :(得分:0)

我想这样的事情应该有用......

var values = [],
    inputs = document.querySelectorAll('input[type="hidden"].mail-contacts');

for (var i = 0; i < inputs.length; i++) {
    values.push(inputs[i].value);
}

您可以使用任何类型的查询选择器。例如,如果您想要名称为to[]

的所有隐藏输入
var searchName = 'to[]';

inputs = document.querySelectorAll('input[type="hidden"][name="' + searchName + '"]');

答案 4 :(得分:0)

如果您使用的是jQuery,请尝试以下方法:

var arrayValues = $('input:hidden.mail-contacts').map(function(){
                      return $(this).val()
                  }).get();