I am using this multiselect JS https://cdn.jsdelivr.net/jquery.multiselect/1.13/jquery.multiselect.min.js . I have it working but the field validation is not working properly, When I hit submit with the field blank the error message will not pop-up, it doesn't submit though which is good. You can see it here on the product interest field
If I go in through developer tools in Chrome and turn off the "display:none" on the original select element
<select id="Product_Interest" name="Product_Interest" class="mktoField mktoHasWidth mktoRequired mktoInvalid" multiple="multiple" size="22" style="width: 250px;/* display: none; */">
it does work properly, so it has something to do with that.
Obviously if you're using a different widget and hiding the original, you have to capture the events from that widget and feed them to the form.showErrorMessage routine to highlight the visible widget.