Ver Mensaje Individual
  #3 (permalink)  
Antiguo 07/04/2017, 04:26
Avatar de manuparquegiralda
manuparquegiralda
 
Fecha de Ingreso: junio-2012
Ubicación: Barcelona
Mensajes: 241
Antigüedad: 12 años, 6 meses
Puntos: 39
Respuesta: Adaptar un OnChange de un Select

Pues yo trabajaría con las etiquetas data para hacerlo más sencillo.

Código HTML:
Ver original
  1. <select name="empresa3">
  2.     <option value="Empresa 1" data-code="123456">Empresa 1 - 123456</option>  
  3.     <option value="Empresa 2" data-code="654321">Empresa 2 - 654321</option>  
  4.     <option value="Empresa 3" data-code="159632">Empresa 3 - 159632</option>      

Código Javascript:
Ver original
  1. (function() {
  2.     // Pasamos los elemento a varibales para trabajar mejor con ellos
  3.  
  4.     const select = document.querySelector( "select[name=empresa3]" );
  5.     const observaciones = document.getElementById( "observaciones" );
  6.  
  7.     // Ponemos a la escucha el cambio en el select
  8.  
  9.     select.addEventListener( "onchange", ev => myFunction( ev ));
  10.  
  11.     // Función que trata el cambio en el select
  12.  
  13.     function myFunction( ev ) {
  14.         // Pasamos a una variable el option seleccionado
  15.  
  16.         const optSelect = select.options[select.selectedIndex];
  17.  
  18.         // Obtenemos el número de la empresa del data-code
  19.  
  20.         const num = optSelect.dataset.code;
  21.  
  22.         // Introducimos el número en el campo observaciones
  23.  
  24.         observaciones.value = num;
  25.     }
  26. })();

Espero que te ayude, esta opción tiene más código, pero a mi me gusta trabajar con un código más limpio y un poco más extenso porque después te ayudará cuando tengas que hacer modificaciones o actualizaciones del mismo.

Un saludo
__________________
Diseño Web - Arisman Web

Última edición por manuparquegiralda; 07/04/2017 a las 04:33