JSFiddle - React, Tailwind, and code Playground
by Durtto
HTML
<form id="form1" name="form" method="post" action="GetCheckBoxNew.asp">
<input type="hidden" name="txt_recebe" value="" />
<label>Noticia 01:
<select name="status" class="font_body">
<option value="0">Aguardando
<option value="1">Revisando
<option value="2">Publicada</select>|
<input name="item1" type="checkbox" id="DESTINOA_<%=Valor_Destino1%>" value="" />Item 1</label>|
<label>
<input name="item2" type="checkbox" id="DESTINOB_<%=Valor_Destino1%>" value="" />Item 2</label>|
<label>
<input name="item3" type="checkbox" id="DESTINOC_<%=Valor_Destino1%>" value="" />Item 3</label>
<br />
<label>Noticia 02:
<select name="status" class="font_body">
<option value="0">Aguardando
<option value="1">Revisando
<option value="2">Publicada</select>|
<input name="item4" type="checkbox" id="DESTINOD_<%=Valor_Destino2%>" value="" />Item 4</label>|
<label>
<input name="item5" type="checkbox" id="DESTINOE_<%=Valor_Destino2%>" value="" />Item 5</label>|
<label>
<input name="item6" type="checkbox" id="DESTINOF_<%=Valor_Destino2%>" value="" />Item 6</label>
<br />
<p>
<input type="submit" name="btn2" id="btn2" value="Verificar Checados" onclick="obterMarcados()" />
</p>
</form>
JavaScript
function obterMarcados() {
// ir buscar todos os elementos
var elementos = document.querySelectorAll('#form1 *');
//criar uma array com cada conjunto
var conjuntos = [],
conjunto = [],
alvos = ['select', 'input'];
for (var i = 0; i < elementos.length; i++) {
var el = elementos[i];
var tagName = el.tagName.toLowerCase();
// caso esteja no fim
if (el.type == 'submit') {
conjuntos.push(conjunto);
break;
}
// se não fôr input ou select saltar a iteração
if (alvos.indexOf(tagName) == -1) continue;
if (el.name == 'status' && tagName == 'select') {
// caso o grupo estar preenchido;
if (conjunto.length) conjuntos.push(conjunto);
conjunto = [];
}
// preencher o conjunto
if (tagName == 'select' || el.checked) conjunto.push(tagName == 'select' ? el.value : el.id);
}
var resultado = JSON.stringify(conjuntos);
console.log(resultado);
document.form.txt_recebe.value = resultado;
}