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;
});