Olá Noelen, tudo bem com você?
Peço desculpas pela demora em lhe responder.
Podemos coletar os campos do tipo checkbox
utilizando a função querySelectorAll
em conjunto com os campos checked
(marcados) do nosso campo de input. Após isso, basta construirmos o objeto, conforme apresentado no código abaixo.
function coletarCheckboxes() {
const checkboxes = document.querySelectorAll('input[type="checkbox"]:checked');
const values = Array.from(checkboxes).map(cb => cb.value);
const obj = {checkboxes: values};
console.log(obj);
}
O código da função coletarCheckboxes
, coleta todos os elementos de entrada do tipo checkbox
que estão marcados e cria um array com seus valores. Em seguida, ele cria um objeto com o atributo checkboxes
recebendo como atribuição o array values
. Finalmente, ele imprime o objeto no console.
Deixo abaixo um exemplo com a aplicação da função coletarCheckboxes
. Quando o botão Enviar
for clicado, será criado um objeto com base nos checkboxes
marcados.
<!DOCTYPE html>
<html>
<head>
<title>Checkbox Exemplo</title>
<script>
function coletarCheckboxes() {
const checkboxes = document.querySelectorAll('input[type="checkbox"]:checked');
const values = Array.from(checkboxes).map(cb => cb.value);
const obj = {checkboxes: values};
console.log(obj);
}
</script>
</head>
<body>
<input type="checkbox" name="checkbox1" value="valor1">
<label for="checkbox1">Valor 1</label><br>
<input type="checkbox" name="checkbox2" value="valor2">
<label for="checkbox2">Valor 2</label><br>
<input type="checkbox" name="checkbox3" value="valor3">
<label for="checkbox3">Valor 3</label><br>
<button onclick="coletarCheckboxes()">Enviar</button>
</body>
</html>
Exemplo de Resultado:
{checkboxes: ["valor1", "valor3"] }
Espero ter lhe ajudado. Em caso de dúvidas estou à disposição.
Não hesite em voltar ao fórum para continuar aprendendo e interagindo com a comunidade.
Abraços e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!