11499 sujets

JavaScript, DOM et API Web HTML5

Bonjour,

Cela fait déjà plusieurs jours que je galère sur le sujet, et je continue.. pff
Je voudrais afficher titre et description de chacune de mes images, une fois qu'elles sont affichées en full-size.
L'auteur du plugin a créé un caption permettant cela. Super!
Mon caption contient donc:
- 1 text-input pour le titre de la photo
- 1 textarea pour la description
- 1 button delete

Mais onBeforeShow, mon ajax ne remplit les champs titre et description que de la 1ere photo sur laquelle je clique. Si je navigue de photo en photo, les champs se vident pour laisser apparaitre leur placeholder respectif....
Et si je retourne sur la photo initialement cliquée, pareil, ses champs de vident pour laisser place au placeholder... Fffff !!!
Je ne vois pas comment remplir mes champs autrement que comme je l'ai fait ci-dessous,

 
var pass="";
function onBeforePhotoboxShow(anchor)   
{     currentImageId = anchor.id; 

pass ="pass";
return $.ajax({ type   : 'POST',
	                url    : 'ajx/5_photobox_display_descriptions.php',					
		      data   : { currentImageId:currentImageId, pass:pass},					
		success: function(setFields)  {
                               var data = JSON.parse(setFields);
                               $('#pbCaption').each(function() {var inp= $(this).find('input');  inp.val(data.title); }); 
			       var area = $('#pbCaption').find('textarea'); area.val(data.description); 

                          // Que j'écrive .each ou pas, le résultat reste le même qu'indiqué...
			 }
                })
}


___________________________________

2* point,
Lorsque je click sur le bouton "Supprimer cette photo", je voudrais demander confirmation, mais là j'ai autant de popups qui s'affichent que d'images dans ma galerie, et rien de ce que j'ai tenté ne fonctionne.

$('#pbCaption').on('click', '.delete_btn', function(event) 
{  var dthis=$(this);
 if (dthis)  // pour test - mais ça bloque l'exec de la suite
{
     event.stopPropagation();
      
          if (confirm('Tu es sur le point de supprimer cette image. Continuer ?')) 
			 {
				  $.ajax({
							type        : 'POST',
							data        : { currentImageId:currentImageId, updater:'deleter'},
							url         : 'ajx/5_photobox_display_descriptions.php',     
						})
			 }
	
	}   
});

___________
Tout mon code côté serveur est correctement exécuté, mais côté client c'est pas terrible du tout !

Merci pour vos lumières