/ / Извличане на всички отметки в таблицата при изпращане на формуляр - javascript, отметка, html-таблица, изпращане

Вземете всички квадратчета за отметка в таблицата, когато изпращате формуляр - javascript, checkbox, html-table, submit

имам <table> в моята форма, която съдържа няколко реда, извлечени от базата данни и на всеки ред поставям отметка и

името на маркера за отметка е идентификаторът на записа на реда

и стойността се променя според състоянието на квадратчето за отметка 1: отметнато, 0: непроверено

Искам да изпратя идентификатора на избраните редове, когато потребителят изпрати формуляра: Не знам как мога да постигна това:

 <table border=1 id="mondiv" class="hidden" >
<th></th>
<th>Numero</th>
<th>Nom</th>
<th>Prenom</th>
<th>Spécialité</th>
{% for item in users %}
<tr>
<td><input type="checkbox" name="{{ item.id }}" onchange="changeetat(this)" /></td>
<td>{{ item.id }}</td>
<td>{{ item.name }}</td>
<td>{{ item.lastname }}</td>
<td>{{ item.specialty }}</td>
</tr>
{% else %}
<h2>Aucun organisateur trouvé</h2>
{% endfor %}
</table>

и тук е методът на Javascript:

    function changeetat(element){
if(element.checked){
element.value = "1";
}
else{
element.value = "0";
}

}

Използвам шаблон за клонки със Symfony

Отговори:

1 за отговор № 1

ако не използвате jQuery от:

var inputs = document.getElementsByTagName("input"); //or
document.forms[0].elements;
var cbs = []; //will contain all checkboxes
var checked = []; //will contain all checked checkboxes
for (var i = 0; i < inputs.length; i++) {
if (inputs[i].type == "checkbox") {
cbs.push(inputs[i]);
if (inputs[i].checked) {
checked.push(inputs[i]);
}
}
}
var nbCbs = cbs.length; //number of checkboxes
var nbChecked = checked.length; //number of checked checkboxes

с jQuery:

var cbs = $("input:checkbox:checked");