Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

192
Views
Necesito ocultar el cuadro de respuesta cuando presiono un botón de clase de arranque

 let btn = document.getElementById('reply-button'); let crdbody = document.getElementById('card-body'); let replybox = document.getElementById('reply-box'); let cancel = document.getElementById('btn btn-danger'); btn.onclick = function() { replybox.style.display = "contents"; } cancel.onclick = function() { crdbody.style.display = "none"; }
 <button class="btn" id="reply-button">Răspunde</button> <div id="reply-box" class="card" style="display: none"> <div class="card-body"> <textarea class="form-control"></textarea> <br> <div class="form-group"> <button class="btn btn-primary">Postează răspunsul</button> <button class="btn btn-danger">Renunță</button> </div> </div> </div>

Mi pregunta es, ¿cómo escondo todos los cuadros de respuesta cuando presiono este botón de clase de arranque (btn btn-danger) - renunta (cancelar)

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Tus clases/id son erróneos:

  • card-body es en realidad una clase, pero lo estás usando como una identificación
  • reply-button identificación nunca aparece en su html
  • cancel-button identificación nunca aparece en su html
  • usar document.getElementById('btn btn-danger') no funciona, necesita poner una identificación allí, no varias clases.

Aquí está su código fijo:

 let btn = document.getElementById('reply-button'); let crdbody = document.getElementById('card-body'); let replybox = document.getElementById('reply-box'); let cancel = document.getElementById('cancel-button'); btn.onclick = function() { replybox.style.display = "contents"; } cancel.onclick = function() { crdbody.style.display = "none"; }
 <div id="reply-box" class="card"> <div id="card-body"> <textarea class="form-control"></textarea> <br> <div class="form-group"> <button class="btn btn-primary" id="reply-button">Postează răspunsul</button> <button class="btn btn-danger" id="cancel-button">Renunță</button> </div> </div> </div>

Tenga en cuenta que la display: contents; está trabajando en el borrador de css (consulte https://caniuse.com/?search=display%3Acontents y https://drafts.csswg.org/css-display/ ), lo que significa que aún puede estar sujeto a cambios y no es un estándar real sin embargo, por lo que no debe (todavía) confiar en esa característica en su código de producción real.

Actualice ya que no puede cambiar el HTML:

 let btn = document.getElementById('reply-button'); let replybox = document.getElementById('reply-box'); let cancel = document.querySelector('.btn.btn-danger'); btn.onclick = function() { replybox.style.display = "contents"; } cancel.onclick = function() { replybox.style.display = "none"; }
 <button class="btn" id="reply-button">Răspunde</button> <div id="reply-box" class="card" style="display: none"> <div class="card-body"> <textarea class="form-control"></textarea> <br> <div class="form-group"> <button class="btn btn-primary">Postează răspunsul</button> <button class="btn btn-danger">Renunță</button> </div> </div> </div>

Al seleccionar elementos por clases, puede usar document.querySelector (para elementos únicos) y document.querySelectorAll (para elementos múltiples).

También tenga en cuenta que eliminé la variable crdbody y cambié la secuencia de comandos para ocultar/mostrar el replybox de respuesta para que se abra/cierre correctamente varias veces.

about 4 years ago · Juan Pablo Isaza Report

0

Prueba esto. ¿Necesitas este resultado?

 let btn=document.querySelector('#reply-box .btn.btn-primary'); let replybox=document.getElementById('reply-box'); let cancel=document.querySelector('#reply-box .btn.btn-danger'); btn.onclick=function(){ replybox.style.display="contents"; } cancel.onclick=function(){ replybox.style.display="none"; } btn.click(); // just for testing... it displays the reply box at first time.
 <div id="reply-box" class="card" style="display: none"> <div class="card-body"> <textarea class="form-control"></textarea> <br> <div class="form-group"> <button class="btn btn-primary">Postează răspunsul</button> <button class="btn btn-danger">Renunță</button> </div> </div> </div>

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!