JSFiddle - React, Tailwind, and code Playground
HTML
<select class="check" name="first">
<option value="">Select</option>
<option value="some" required="true">Some required</option>
<option value="other">Other Value</option>
<option value="few" required="true">Few required</option>
</select>
<select class="check" name="second">
<option value="">Select</option>
<option value="some" required="true">Some required</option>
<option value="other">Other Value</option>
<option value="few" required="true">Few required</option>
</select>
<select class="check" name="third">
<option value="">Select</option>
<option value="some" required="true">Some required</option>
<option value="other">Other Value</option>
<option value="few" required="true">Few required</option>
</select>
<select name="other">
<option value="">Select</option>
<option value="some" required="true">Some required</option>
<option value="other">Other Value</option>
<option value="few" required="true">Few required</option>
</select>
<button class="check-select">Check!</button>
JavaScript
$(document).on('click','.check-select',function(){
var requiredFields = array();
$('option:selected', this).attr('required').each(function(){
requiredFields[]=$(this).val();
})
var valuesSelected = array();
$('.check').each(function(){
valuesSelected[]=$(this).val();
})
for(i=0;i<requiredFields;i++){
if(jQuery.inArray(requiredFields[i], valuesSelected)==-1){
var error += 'Please select '+requiredFields[i];
}
}
if(error!=''){
alert(error); // just for testing
} else {
// have fun
}
});