• Super User

    [Ajax] ajax() method

    Salve utenti,
    avrei bisogno del vostro prezioso aiuto...

    Ho realizzato questa chiamata Ajax, funziona tutto correttamente, praticamente cambio la classe di uno <span> al click su di esso!

    
    
    <span class="label label-warning" onclick="aggiorna('.$elenco_expo['id'].',0)">SOSPESO</span>
    
        <script type="text/javascript">
     function aggiorna(id,stato){
         
         var articolo = id;
         
         var state = stato;
         
         $.ajax({
          type: "POST",
          url: "magazine/mod_state_ajax.php",
    
          data: "update=" + id,
          async: false,
    
          success: function(msg)
          {
            if(msg == 1){
                if(state == 0){
                    $('span.label').removeClass('label-warning').addClass('label-success');
                } else {
                    $('span.label').removeClass('label-success').addClass('label-warning');
                }
                
            }
          },
          error: function()
          {
            alert("Chiamata fallita, si prega di riprovare...");
          }
        });
        
     }
     </script>
    
    
    

    La classe viene cambiata..ma come potete immagina, il contenuto dello <span>, cioè SOSPESO, rimane sempre quello...dovrebbe diventare ATTIVO!

    Qualche suggerimento?

    Grazie! :wink3:


  • Super User

    Mi rispondo da solo:

    1. in ogni span ho dovuto aggiungere un id="'.$elenco_expo['id'].'" per indentificarlo univocamente!

    2. Ho modifica la parte della chiamata ajax così:

    
            if(msg == 1){
                    $('span.#'+id).removeClass('label-warning').addClass('label-success');
                    $('span.#'+id).html("ATTIVO");
                } else {
                    $('span.#'+id).removeClass('label-success').addClass('label-warning');
                    $('span.#'+id).html("SOSPESO");                
                }
    
    

    quindi inserendo l'ID e aggiungere .html() per cambiare lo stato ATTIVO - SOSPESO!

    Grazie comunque! 😉