Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

221
Vistas
cómo agregar haga clic solo en el botón

Estoy usando jquery para vincular un clic en un botón. En esta var testId, obtengo la identificación del botón y var showmoreId obtiene la identificación de un div, pero el problema es que onclick se vincula con el li, por lo que cuando hago clic en cualquier lugar de li, onclick funciona, pero quiero que funcione al hacer clic en el botón. y también quiero la identificación del div al hacer clic, pero no quiero que li funcione al hacer clic, entonces, ¿qué puedo hacer para solucionarlo?

 async function userData(userdata) { let newValue = ""; userdata.forEach(max=> { let add = `<div class="rb-container"> <ul class="rb"> <li> <div> <p>${max.name}</p> <div> <p>${max.email}</p> <button id="showMoreLess_${max.id}" data-order-id="${max.id}">View More</button> </div> <div id="showme_${max.id}" class="showBlock" style="display:none";> <div> <div> <p>Quantity:</p> <p>${max.volume}</p> </div> <div> <p>${max.group_email}</p> <p>Group_Email</p> </div> </div> </div> </div> </li> </ul> </div>` newValue += add ; let container = document.querySelector('.user-details'); container.innerHTML = newValue; } $(document).ready(function() { $('.rb-container li').unbind('click'); $('.rb-container li').on('click', function () { var testId = $(this).find('button').attr('id'); var showmoreId = ($(this).find('div > div').next().attr('id')); viewFullDetails(testId, showmoreId); });
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

La función .on() admite un selector opcional para manejar eventos en ciertos elementos secundarios.

 $('.rb-container li').on('click', 'button', function() { var testId = $(this).attr('id'); var showmoreId = $(this).closest('li').find('div > div').next().attr('id'); viewFullDetails(testId, showmoreId); });

Tenga en cuenta que acabo de agregar el 'button' del selector pero, por supuesto, puede usar cualquier selector, por ejemplo, #id . Luego encontré el li más cercano para ir desde allí para obtener el showmoreId .

Considere también usar .off() en lugar de .unbind() ya que este último ha quedado obsoleto.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda