除非填写所有文本输入字段,否则禁用表单按钮

Pao*_*o B 4 javascript forms jquery

我有一个具有多个文本输入的表单,我不想为每个添加id,因为它们是从服务器端代码生成的 - 字段数可能不同等等.我只是希望能够禁用提交按钮,直到那里是输入到每个文本输入的文本.

我已经做到这一点,但只禁用按钮,直到文本输入到一个文本输入字段 - 我希望它保持禁用状态,直到文本输入到所有文本输入.

    <script>
        $(function () {
            $('#button').attr('disabled', true);

            $('input:text').keyup(function () {
                $('#button').prop('disabled', this.value == "" ? true : false);
            })
        });
    </script>
Run Code Online (Sandbox Code Playgroud)

我也尝试过$('input:text').each().keyup(function (){- 但是没有按钮可点击?

Sad*_*san 6

$('#button').attr('disabled', true);
$('input:text').keyup(function () {
   var disable = false;
       $('input:text').each(function(){
            if($(this).val()==""){
                 disable = true;      
            }
       });
  $('#button').prop('disabled', disable);
});
Run Code Online (Sandbox Code Playgroud)

演示