JSFiddle - React, Tailwind, and code Playground
HTML
<select id="categories" name="categories[]" multiple="multiple" onchange="sendCategories(this);">
<option value="asdf">asdf</option>
<option value="fdsa">fdsa</option>
<option value="fff">fff</option>
<option value="aaa">aaa</option>
</select>
JavaScript
function sendCategories(sel) {
var values = [], i, j, cur;
for (i = 0, j = sel.options.length; i < j; i++) {
cur = sel.options[i];
if (cur.selected) {
values.push(encodeURIComponent(cur.value));
}
}
if (values.length) {
values = encodeURIComponent(sel.name) + "=" + values.join("&" + encodeURIComponent(sel.name) + "=");
} else {
values = null;
}
alert(values);
}