Tengo una base de datos que tiene ID de usuario, nombre, código de tienda.
lo que estoy buscando es que cuando el usuario seleccione al supervisor, también obtendrá el valor del código de tienda para el supervisor seleccionado. ¿Hay alguna forma de tener 2 atributos de nombre y 2 de valor en la etiqueta de selección?
<select name="supervisor_ID shopCode_ID" id="supervisor_ID shopCode_ID"> <% for (const i in supervisor) { %> <option value="<%= supervisor[i].id supervisor[i].shopCode%>"> <%= supervisor[i].name %> </option> <% } %> </select>Puede usar el atributo de datos para obtener información adicional como la siguiente
<select id="select"> <option value="1" data-foo="dogs">this</option> <option value="2" data-foo="cats">that</option> <option value="3" data-foo="gerbils">other</option> </select>Puede establecer ambos valores con un separador y luego dividir el separador para obtener los valores. Por ejemplo:
let selectbox = document.querySelector('select'); selectbox.addEventListener('change', function(e) { let val = this.value.split(':'); alert(`Supervisor ID: ${val[0]} Shopcode ID: ${val[1]}`); }) <select name="supervisor_ID shopcode_ID" id="supervisor_ID shopcode_ID"> <option selected disabled>Select a supervisor</option> <option value="505:1">Mr. Supervisor 505</option> <option value="506:121">Mr. Supervisor 506</option> <option value="505:134">Mr. Supervisor 505</option> </select>luego puede usar javascript para obtener los valores.