- Home
- Categorie
- Coding e Sistemistica
- Javascript & Framework
- Problemino con jquery
-
Problemino con jquery
Vado al sodo.
Ho creato una photogallery per un progetto. Ora quello che voglio fare è dare la possibilità all'utente di cancellare le singole immagini.
Mi sono già realizzato tutti gli script in php e relative chiamate al database, però volevo aggiungere la possibiltà di fare il tutto utilizzando ajax in modo che la pagina non refreshi ogni volta e mi stampasse subito il risultato della richiesta.
Il mio problema è che dato che le immagini le estraggo da un solo campo in un ciclo for, di conseguenza anche i relativi selettori, saranno uguali per tutte le immagini. Ho risolto il problema aggiungendo l'ID dell'immagine come classe al selettore dove dovrò estrarre i risultati. Quindi fatto ciò, ho impostato jquery in questo modo:
[HTML]
<script>
$('.click').click(function() { // al click del link
var nome = $(this).attr('id') // recupero la variabile impostata come id al link
var id = $('.id').val() // recupero altra variabile da passare allo script successivo$.ajax({
url: "assets/cancella_immagine_galleria.php",
type: "GET",
data: {nome:nome , id:id },
success: function(data) { // fin qui tutto ok
$('.'+nome).html(data) // ora, devo stampare il risultato dentro la classe "NOME"
}
})
})
</script>
[/HTML]Il tutto mi sembra corretto, ma aimè non funziona. O meglio, se allo script passo un alert(data) (dopo il success di ajax ), ovviamente l'alert mi restituisce il risultato, ma quando lo stampo nel div, non mi stampa nulla.
Vi posto anche un pezzo dello script che estrae le immagini, così magari aiuta:
[PHP]
<?php
$gruppo = substr($galleria,1,-1) ;
$immagine = explode(',' , $gruppo );for ( $i = 0 ; $i <=count($immagine) -1 ; $i++ ) {
?>
<div id="<?php echo $immagine*?>" class="col-lg-4 img_force">
<img class="img-responsive" src="uploads/<?php echo $immagine*?>" />
<p><a class="click" id="<?php echo $immagine*?>" href="#">Cancella</a></p>
<input type="hidden" class="id" value="<?php echo $id ?>" />
</div>
<?php } ?>
[/PHP]Grazie in anticipo