Given a select with multiple option’s in jQuery.
$select = $('<select></select>'); $select.append('<option>Jason</option>') //Key = 1 .append('<option>John</option>') //Key = 32 .append('<option>Paul</option>') //Key = 423
How should the key be stored and retrieved?
The ID may be an OK place but would not be guaranteed unique if I had multiple select’s sharing values (and other scenarios).
Thanks
and in the spirit of TMTOWTDI.
$option = $('<option></option>'); $select = $('<select></select>'); $select.addOption = function(value,text){ $(this).append($('<option/>').val(value).text(text)); }; $select.append($option.val(1).text('Jason').clone()) .append('<option value=32>John</option>') .append($('<option/>').val(423).text('Paul')) .addOption('321','Lenny');
Like lucas said the value attribute is what you need. Using your code it would look something like this ( I added an id attribute to the select to make it fit ):
jQuery lets you get the value using the val() method. Using it on the select tag you get the current selected option’s value.
Just in case, the .each method loops throught every element the query matched.