11488 sujets

JavaScript, DOM et API Web HTML5

Bonjour,

Le code si dessous me permet de récupérer la valeur des checkbox sélectionnées pour effectuer des modifications dans ma BDD. J'aimerai récupérer la valeur des champs sélectionnés dans une seul variable 'array' pour la transmettre à mon code php.

<input type="checkbox" name="cmd[1]" value="1" />
<input type="checkbox" name="cmd[2]" value="2" />
<input type="checkbox" name="cmd[5]" value="5" />
<input type="checkbox" name="cmd[44]" value="44" />


$("#delSelected").button().on("click", function()
	{
		$("input[type=checkbox]").each(function()
		{
			var e = $(this);
			
			if(e.is(':checked') && e!=='undefined')
			{
				$('tr#cmd_'+e.val()).toggle('slow');
				
				$.ajax({
					method: 'POST',
					url: 'ajax.php',
					data: {id: e.val(), action: 'supprimer_une_commande'}
				})
				.done(function(e) {
					$('#successOpt').html("Commande(s) supprimée(s).");
					$('#successOpt').toggle('slow').delay(5000).toggle('slow');
				});
			}
	   });
	});


J'ai essayer avec ça mais ça ne fonctionne pas :

$("#delSelected").button().on("click", function()
	{
		var mesChamps = [];

		$("input[type=checkbox]").each(function()
		{
			var e = $(this);

			if(e.is(':checked') && e!=='undefined')
			{
				mesChamps.push($(this).val());
			}
		});
		
		// Code $.ajax() qui envoi array(1, 2, 5,44) à mon php
	});


Help !

Merci Smiley smile
J'ai trouvé une solution :

$("#delSelected").button().on("click", function()
	{
		var mesChamps = [];

		$("input[type=checkbox]").each(function(i)
		{
			if($(this).is(':checked') && $(this).val()>0 && $(this).val()!=='')
				mesChamps[i] = $(this).val();
		});

		alert(mesChamps);
		
		// Code $.ajax() qui envoi mesChamps array(1, 2, 5,44) à mon php
	});


Si vous avez mieux je suis preneur !
J'ai trouvé une solution :

$("#delSelected").button().on("click", function()
	{
		var mesChamps = [];

		$("input[type=checkbox]").each(function(i)
		{
			if($(this).is(':checked'))
				mesChamps[i] = $(this).val();
		});

		alert(mesChamps);
		
		// Code $.ajax() qui envoi mesChamps array(1, 2, 5,44) à mon php
	});


Si vous avez mieux je suis preneur !
Modifié par Hayreon (19 Mar 2017 - 10:40)
Au passage, si un modo passe par là :

J'ai éditer ma réponse pour supprimer un bout de code et marquer le sujet comme résolu, ça a créé une nouvelle réponse...