Questo mi ha perplesso. Posso facilmente ottenere il valore di una selezione multipla come un array, e passarlo a una richiesta AJAX:jQuery: restituisce il valore di una casella di controllo come matrice?
<select id="countries" class="multiselect" multiple="multiple" name="countries[]">
<option value="AFG">Afghanistan</option>
<etc>
...
$countries_input = $("#countries");
var countries = $countries_input.val();
$.ajax({
data: {
country : countries,
...
},
...
});
ma non riesco a trovare alcun modo equivalente per ottenere i valori di una casella di controllo con selezioni multiple. Le cose ovvie non funzionano:
<input type="checkbox" name="check[]" value="foo1"/>foo1<br/>
<input type="checkbox" name="check[]" value="foo2"/>foo2<br/>
...
var bar = $('input:checkbox[name=check]').val(); // undefined
var bar = $('input:checkbox[name=check[]]').val(); // also undefined
var bar = $('input:checkbox[name=check]:checked').val(); // also undefined
Qualche idea? Grazie.
avvolgere la selettori di attributo tra virgolette. '$ ('input: checkbox [name =" check [] "]'). val();' –
Grazie ragazzi - Ho imparato molto qui. Non mi piace la cosa "risposta tick", ma l'ho data a TJC, perché è arrivato un minuto prima ... :) Mi piace la cosa jsFiddle, però. – EML