In the code shown below, how to get the values of multiselect box in function val()
using jQuery or pure JavaScript?
<script>
function val() {
//Get values of mutliselect drop down box
}
$(document).ready(function () {
var flag = 0;
$('#emp').change(function () {
var sub = $("OPTION:selected", this).val()
if (flag == 1) $('#new_row').remove();
$('#topics').val('');
var html = '<tr id="new_row" class="new_row"><td>Topics:</td><td> <select id="topic_l" name="topic_l" class="topic_l" multiple="multiple">';
var idarr = new Array();
var valarr = new Array(); { %
for top in dict.tops %
}
idarr.push('{{top.is}}');
valarr.push('{{pic.ele}}'); { % endfor %
}
for (var i = 0; i < idarr.length; i++) {
if (sub == idarr[i]) {
html += '<option value="' + idarr[i] + '" >' + valarr[i] + '</option>';
}
}
html += '</select></p></td></tr>';
$('#tops').append(html);
flag = 1;
});
});
</script>
Emp:
<select id="emp" name="emp">
<option value=""></option>
<option value="1">1</option>
</select>
<div name="tops" id="tops"></div>
<input type="submit" value="Create Template" id="create" onclick="javascript:var ret=val();return ret;">
Thanks in advance!
This got me the value and text of the selected options for the jQuery multiselect.js plugin:
very usefull if you need it for your "onChange" event ;)
This doc is like a holy grail for select and jquery. http://comp345.awardspace.com/select_element_cheatsheet.pdf
According to the widget's page, it should be:
It works for me :)
the
val
function called from theselect
will return an array if its a multiple.$('select#my_multiselect').val()
will return an array of the values for the selected options - you dont need to loop through and get them yourself.I think the answer may be easier to understand like this:
If you select "Carrot" and "Raisins" in the list, the output will be "1,3".