JSFiddle - React, Tailwind, and code Playground
by homer2
HTML
<select id="z">
<option optGroup='a'>1</option>
<option optGroup='a'>1</option>
<option optGroup='a'>1</option>
<option optGroup='b'>2</option>
<option optGroup='b'>2</option>
</select>
JavaScript
function setupOptGroups() {
var optGroups=new Array();
var i = 0;
$("select [optGroup]").each(function(index, domEle) {
var optGroup = $(this).attr("optGroup");
if ($.inArray(optGroup, optGroups)==-1) optGroups[i++] = optGroup;
});
alert(optGroups.length);
for(var j=0; j < optGroups.length; j++){
$("option[optGroup='"+optGroups[j]+"']").wrapAll("<optgroup label='"+optGroups[j]+"'>");
}
}
setupOptGroups();