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

367
Views
¿Cómo cambio el ícono con Jquery?

Tengo una llamada AJAX que permite seleccionar un elemento, estoy mostrando el elemento seleccionado con un fondo más oscuro y el icono marcado como seleccionado.

Puedo cambiar el fondo pero cuando intento cambiar el icono no funciona. Alguien me puede explicar que estoy haciendo mal?

aqui esta el codigo

 $("#accounts-list").on('click', '.nav-link', function () { var object_id = $(this).data('object-id'); $.ajax({ url: "url_to_ajax_call.php", data: { 'account_id': object_id }, type: 'POST', success: function (response) { // remove class where previously selected $(".nav-link").removeClass("bg-soft-primary"); // background $(".nav-link>span.fa-check-circle").removeClass("fa-check-circle").addClass("fa-circle"); // remove checked icon // apply selected class to the new item let item = $('.nav-link[data-object-id=' + object_id + ']'); item.addClass('bg-soft-primary'); // apply background $(item + ">span.fa-circle").removeClass("fa-circle").addClass("fa-circle"); // select checked icon } }) })
 <div id="accounts-list"> <ul class="nav"> <li class="nav-item"> <div class="nav-link nav-link-card-details bg-soft-primary" data-object-id="1"> <span class="far fa-check-circle"></span> Item 1 </div> </li> <li class="nav-item"> <div class="nav-link nav-link-card-details" data-object-id="2"> <span class="far fa-circle"></span> Item 2 </div> </li> <li class="nav-item"> <div class="nav-link nav-link-card-details" data-object-id="3"> <span class="far fa-circle"></span> Item 3 </div> </li><li class="nav-item"> <div class="nav-link nav-link-card-details" data-object-id="4"> <span class="far fa-circle"></span> Item 4 </div> </li> </li> </ul> </div>

Gracias

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

0

En $(item + ">span.fa-circle") , item no es una cadena para usar, tiene un selector... Es un objeto jQuery.

Así que hazlo así:

 item.find("span.far")

¡Ho! Para notar algún efecto, deberían haber dos clases fontAwesome (una agregada y otra eliminada;)

 .removeClass("fa-check-circle").addClass("fa-circle")

Otra forma sería:

 .toggleClass("fa-check-circle fa-circle")
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!