Ver Mensaje Individual
  #2 (permalink)  
Antiguo 24/02/2016, 12:53
Avatar de carlillos
carlillos
 
Fecha de Ingreso: febrero-2007
Ubicación: México
Mensajes: 245
Antigüedad: 17 años, 3 meses
Puntos: 21
Respuesta: addeventlistener u otro método para actuar en muchos botones

Podrías ponerle la misma clase a cada botón para luego generar una lista de esos botones con "getElementsByClassName", luego haces un loop para agregar el evento a cada botón.
Código HTML:
Ver original
  1. <div id="div1">
  2.     <p>Texto 1</p>
  3.     <button type="button" class="boton" name="1">Responder</button>
  4. </div>
  5.  
  6. <div id="div2">
  7.     <p>Texto 2</p>
  8.     <button type="button" class="boton" name="2">Responder</button>
  9. </div>
  10.  
  11. var botones = document.getElementsByClassName('boton');
  12.  
  13. for (var i = 0; i < botones.length; i++) {
  14.    crear_evento(botones[i]);
  15. }
  16.  
  17. function crear_evento(boton) {    
  18.    boton.onclick = function () {        
  19.        document.getElementById('div' + boton.name).className = 'nueva_clase';        
  20.    }    
  21. }
Cada botón tiene un atributo "name" diferente para identificarlo y cambiar su div correspondiente. Este ejemplo tiene 2 divs pero funciona para la cantidad que sea.
Saludos.

Última edición por carlillos; 24/02/2016 a las 13:08