J'ai une option de sélection avec plusieurs optgroups. Je veux sélectionner plusieurs valeurs de chaque groupe & obtenir des valeurs en fonction de l'étiquette (de optgroup) lors de la soumission.Comment obtenir des valeurs d'optgroup multisélect basées sur chaque étiquette sur submit?
code HTML est
<table> <tr> <td>Select</td> <td> <select multiple="multiple" id="multiGrpSel" "> <optgroup label="Indutry Types" id="types"> <option value="1">Private</option> <option value="2">Public</option> <option value="3">Govt</option> </optgroup> <optgroup label="Unit Category" id="unit"> <option value="1">Micro</option> <option value="2">Small</option> <option value="3">Medium</option> </optgroup> </select> </td> </tr> <tr><th align="center"> <input type="button" id="submit" class="button" value="Submit"> </th></tr> </table>
Et soumettre
$("#submit").die('click').live('click',function() {
$('#multiGrpSel').find("option:selected").each(function(){
//optgroup label
console.debug('label='+$(this).parent().attr("label"));
//optgroup id
console.debug('id='+$(this).parent().attr("id"));
// values based on each group ??
id = $(this).parent().attr("id");
console.debug('value='+$('#'+id).val());
});
});
Si deux options de 1er & 2e optgroups sont sélectionnés, je reçois l'étiquette & id, mais la valeur est vide.
Sortie:
label=Unit Category
id=unit
value=
label=Unit Category
id=unit
value=
label=Industry Types
id=types
value=
label=Industry Types
id=types
value=
oops..i utilisé id de l'optgroup .. cela a fonctionné merci @dexterb – user123