JSFiddle - React, Tailwind, and code Playground

HTML

<form action="#" method="POST" id="formName">
    <select>
        <option value="">-- selecione um valor --</option>
        <option value="volvo">Volvo</option>
        <option value="saab">Saab</option>
        <option value="mercedes">Mercedes</option>
        <option value="audi">Audi</option>
    </select>
    <input type="text" id="texto1" />
    <input type="text" id="texto2" value="valor-prévio" />
    <textarea id="Textarea1"></textarea>
    <textarea id="Textarea2">valor-prévio</textarea>
    <input type="checkbox" name="chk" value="check-is-true" />
    <button id="botao">botão</button>
</form>

CSS

input, textarea, select {
    display: block;
}

JavaScript

$(function () {
    var $inputs = $("input, textarea, select", "#formName"),
        $button = $("#botao");

    var limpos = 0;

    // verificação inicial
    $inputs.each(function () {
        var $this = $(this);
        var val = $this.val();
        val || limpos++;
        $this.data("val-antigo", val);
    });

    $button.prop("disabled", !!limpos);

    $inputs.on("change keyup mouseup", function () {
        var $this = $(this);
        var val = $this.val();
        limpos += (val ? 0 : 1) - ($this.data("val-antigo") ? 0 : 1);
        $this.data("val-antigo", val);
        $button.prop("disabled", !!limpos);
    });
});