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

280
Views
jQuery eliminar elemento con next() y remove()

Estoy usando jQuery para eliminar un elemento con la clase llamada " added ". Hay varios elementos con este nombre de clase.

 $(".steps-row-first").on("change", ".anotherCheese", function() { if($(this).val() == 'no') { $(this).parent().next(".added").remove(); } else { $(".steps-row-first").append("<div class='added'></div>"); } });

Aquí está el HTML:

 <div class="steps-row-first"> <div class="form-group"> <div class="radio-wrapper"> <div class="radio-group"> <input type="radio" class="anotherCheese" name="anotherCheese" value="yes"> <label>Yes</label> </div> <div class="radio-group"> <input type="radio" class="anotherCheese" name="anotherCheese" value="no"> <label>No</label> </div> </div> </div> <div style="clear:both;"></div> <div class="added"></div> </div>

Cuando hago clic en el botón de opción no, el elemento no se elimina, ¿qué estoy haciendo mal?

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

0

Su jQuery es incorrecto para eliminar el elemento. En $(this).parent().next(".added").remove(); , $(this) es el elemento de entrada, por lo que su padre es solo el elemento .radio-group . Debe cambiarlo a $(this).parents('.radio-wrapper').next(".added").remove();

Incluso lo anterior no funcionará porque hay un <div> entre .radio-wrapper y .added , para que funcione, debe usar next() dos veces: $(this).parents('.radio-wrapper').next().next(".added").remove();

about 4 years ago · Juan Pablo Isaza Report

0

No sé, ¿dónde está exactamente el .steps-row-first

pero intente usar a los padres para volver y luego elija los hermanos de los padres para apuntar a su div con clase agregada como se muestra a continuación:

 .... if($(this).val() == 'no') { $(this).parents(".form-group").siblings(".added").remove(); } ....
about 4 years ago · Juan Pablo Isaza Report

0

 $(".steps-row-first").on("change", ".anotherCheese", function() { if($(this).val() == 'no') { $(".steps-row-first").find(".added").remove(); } else { $(".steps-row-first").append("<div class='added'></div>"); } });

puede usar find () para encontrar todas las clases .agregadas y eliminarlas

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!