JSFiddle - React, Tailwind, and code Playground
HTML
<form action="">
<div></div>
<fieldset>
<label for="username"></label>
<input type="text" id="username" name="logon">
</fieldset>
<fieldset>
<label for="password"></label>
<input type="password" id="password" name="password">
</fieldset>
<textarea>olá</textarea>
<select><option value="a" name="A" >A</option></select>
<input type="hidden" name="realm" value="realm1">
<fieldset>
<input type="submit" value="Click Me" />
</fieldset>
</form>
JavaScript
$('form').on('submit', function () {
var elems = $('form input:not([value]), input[name=""], select:empty, textarea:empty');
debugger;
var inputNames = [];
elems.each(function (index, elem) {
inputNames.push(elem.id || elem.name || 'field not named');
});
alert(elems.length + ' empty fields ' +
'\nFieldnames: ' + inputNames.join(', '));
return false;
});