Estoy creando formularios PDF rellenables que tienen muchas listas desplegables con las mismas opciones: X = OK, D = Defecto, N = No aplicable y O = Reparación realizada. La mayor parte del tiempo, todo se marcará como OK, por lo que en lugar de seleccionar X en cada lista desplegable, sería genial si al hacer clic en un botón en la parte superior se estableciera el valor de cada menú desplegable en X.
Sería genial si solo marcara los menús desplegables vacíos como OK, de modo que si el usuario ya completó con algo que no sea OK, no lo sobrescriba.
Según tengo entendido, tiene un montón de listas desplegables con opciones X, D, N y O. Desea un botón que establezca todos los menús desplegables no establecidos en X cuando se haga clic en ellos.
A continuación se muestra un ejemplo de código "mal escrito" para eso. Puedes usarlo como punto de partida.
document.getElementById("okSetBtn").addEventListener("click", function(e) { document.querySelectorAll(".status").forEach(a => a.value = a.value || "X"); }); <button id="okSetBtn">Set unset to OK</button> <div> <label>Status 1</label> <select class="status" id="status1"> <option value=""></option> <option value="X">OK</option> <option value="D">Defect</option> <option value="N">Not Applicable</option> <option value="O">Repair Made</option> </select> </div> <div> <label>Status 2</label> <select class="status" id="status2"> <option value=""></option> <option value="X">OK</option> <option value="D">Defect</option> <option value="N">Not Applicable</option> <option value="O">Repair Made</option> </select> </div> <div> <label>Status 3</label> <select class="status" id="status3"> <option value=""></option> <option value="X">OK</option> <option value="D">Defect</option> <option value="N">Not Applicable</option> <option value="O">Repair Made</option> </select> </div>