0

私はこのコードを持っています:

setInterval(function(){
  if($("#username_error").val() == "" && $("#password_error").val() == "" && $("#email_error").val() == ""){
    $('input[type="submit"]').removeAttr('disabled');
  } else {
    $('input[type="submit"]').attr('disabled','disabled');
  }
}, 10);

3つのdivにエラーがない場合は、送信ボタンを無効にする必要があります。このコードを実行しても、何も起こりません。しかし、私がこれを行うと、alert()このifステートメントは正しく実行されます。私はここで何が間違っているのですか?

4

3 に答える 3

1

それを好きにしてください:

$('input[type="submit"]').attr('disabled','disabled');    

$('input[type="text"]').change(function(){
   if($("#username_error").val() == "" && $("#password_error").val() == "" && $("#email_error").val() == "") {
       $('input[type="submit"]').removeAttr('disabled');
   } else {
       $('input[type="submit"]').attr('disabled','disabled');
   }
});

デモ

于 2012-12-28T11:12:11.800 に答える
0

jQueryキーアップイベントを使用します。

$('input').keyup(function(){
       if($("#username_error").val() == "" && $("#password_error").val() == "" && $("#email_error").val() == "") {
         $('input[type="submit"]').attr('disabled',true);
       } else {
         $('input[type="submit"]').attr('disabled', false);
       }
    });
于 2012-12-28T11:16:43.880 に答える
0

別の解決策...

$(document).ready(function () {
    $('button').attr("disabled", true); // starts disabling the button
    $('input').on("blur", null, function () {
        if ($("#username_error").val() != "" && $("#password_error").val() != "" && $("#email_error").val() != "") {
            $("#botao").attr("disabled", false);
        } else {
            $("#botao").attr("disabled", true);
        }
    });
});
于 2012-12-28T11:41:42.940 に答える