Entonces, no pude obtener un título simple, lo siento por eso.
Básicamente, quiero enviar un mensaje a X usuarios.
Para ello debo seleccionar los usuarios a los que quiero enviar este mensaje, y su tipo, si son normales, CC o CCI.
Cada tipo de opción tiene un solo nombre, lo que significa que al final obtengo una lista de destinatarios normales, destinatarios CC y destinatarios CCI. Todo esto usando casillas de verificación, necesitándome para crear un evento de javascript para recrear un tipo de comportamiento de radio para las opciones de un solo usuario. Me preguntaba si había una mejor opción que esta, ¿usando radios?
Los CCI aún no están implantados desde que comencé a hacerme esta pregunta cuando me pidieron que los hiciera... Aquí está el código para un usuario, siendo el evento onclick la función que recrea el comportamiento de la radio...
<label class="dropdown-item text-wrap labelname" style="overflow-wrap: break-word; padding-left: 5px; padding-right: 0px;"> <input class="green form-check-input me-1 checkboxes-recipients recipientsmessage " id="green2" onclick="syncUnCheck(green2, gray2)" type="checkbox" value="invite" name="recipients[]"> <input class="gray form-check-input me-1 checkboxes-recipients recipientsmessage" id="gray2" onclick="syncUnCheck(gray2, green2)" type="checkbox" value="invite" name="recipientsCC[]"> invité </label> El problema de esta función es que no maneja una cantidad indefinida de casillas de verificación, sino solo 2 actualmente y 3 en el futuro. Si no encuentro otras opciones... ¿tal vez un argumento de matriz en su lugar?
aquí está el código de la función:
<script> function syncUnCheck(id, idAlt1) { $(id).on("change", function() { var ischecked= this.checked if (ischecked) { $(idAlt1).prop("checked", !this.checked).trigger('change'); } {% if '/messagerie/send' in request.path %} showCheckedMessage(); {% endif %} }); }; </script> Las preguntas son así:
¿Hay una manera html fácil de hacer lo que quiero?
¿Un truco de Django que me permite usar fácilmente radios con diferentes nombres para cada usuario?
¿O debería simplemente cambiar la función js para manejar un número indeterminado de casillas de verificación?