jQuery: salvare i valori delle checkbox multiple

Vi sarà sicuramente capitato di dover utilizzare checkbox multiple e doverne salvare i valori. jQuery ci offre una semplice soluzione.

Possiamo salvare i valori in un oggetto JavaScript. Ovviamente i valori che ci interessano sono soltanto quelli delle checkbox selezionate dall'utente:


var $context = $( "#form" ),
	values = {};
	
$( ":checkbox", $context ).each(function() {
	var $checkbox = $( this );
	
	if( $checkbox.prop( "checked" ) ) {
		var name = $checkbox.attr( "name" );
		var value = $checkbox.val();
		
		values[ name ] = value;
	
	}

});

Perché non ho usato il selettore :checked? Perché il metodo prop() ci consente di eseguire una verifica il cui risultato è al di la di ogni possibile errore. L'oggetto restituito avrà delle proprietà il cui nome sarà quello dell'attributo name dei campi e il cui valore corrisponderà all'attributo value delle checkbox.

Torna su