Как добавить значения из флажков в массив - PullRequest
1 голос
/ 13 сентября 2011

У меня есть форма, которая содержит пару флажков.После отправки этой формы мне понадобятся эти флажки (значения) для массива javascript.

Может ли кто-нибудь оказать мне услугу, пожалуйста, как это сделать?

Ответы [ 4 ]

3 голосов
/ 13 сентября 2011
var form = document.getElementById("yourformname"),
    inputs = form.getElementsByTagName("input"),
    arr = [];

for (var i = 0, max = inputs.length; i < max; i += 1) {
   // Take only those inputs which are checkbox
   if (inputs[i].type === "checkbox" && inputs[i].checked) {
      arr.push(inputs[i].value);
   }
}
1 голос
/ 13 сентября 2011
var values = [],
    inputs = document.getElementsByTagName("input");

for (var i = inputs.length -1 ; i>= 0; i--)
    if (inputs[i].type === "checkbox" && inputs[i].checked)
          values.push(inputs[i].value);

для чистого JS.

1 голос
/ 13 сентября 2011

с помощью jquery вы можете сделать что-то вроде этого:

var checkboxArr=[];
$('input[type=checkbox]').each(function(){
    checkboxArr.push(this);
});

Не проверено и не знаете, как это будет работать в чистом js, возможно, оно может указать вам правильное направление

0 голосов
/ 13 сентября 2011

Вы можете проверить следующую функцию на jsfiddle :

function getCheckboxes(form_id, name) {
    // returns array of checked checkboxes with 'name' in 'form_id'
    var form = document.getElementById(form_id);
    var inputs = form.getElementsByTagName("input");
    var values = [];
    for (var i = 0; i < inputs.length; ++i) {
        if (inputs[i].type === "checkbox" && 
            inputs[i].name === name &&
            inputs[i].checked) 
        {
            values.push(inputs[i].value);
        }
    }
    return values;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...