0

メールとパスワードの基準に一致する場合、入力フィールドに「有効」なクラスを追加しています。入力された入力が完全に消去されても、有効なクラスが追加されると、両方のフィールドに有効なクラスがある場合、送信ボタンを有効にしたいと考えています。

これを修正するには、有効なクラスを削除するか、フィールドが空でないときにカウンターをインクリメントする必要があります。有効なクラスが存在するかどうか、およびフィールドが空でないかどうかを確認する2番目のケースを試しています。以下のコードでは、目的の効果が得られません。

<input type="email" name="email" placeholder="Email" class="email required valid" id="aim_Email">
<input type="password" name="password" id="aim_Password" placeholder="Password" class="newpassword password required aimError" style="">


$('.required').live('blur', function (value) {
  if ($(this).hasClass('valid') && $(this).val()) {
    count++;
    if (count > 1) {
      alert('event fired');
      $(".submit").removeClass("disabled");
      $(C.options.currentPage).find('input[type="submit"]').removeAttr("disabled");
      $('.passwordHint').hide();
    }
  }
});
4

3 に答える 3

1

空になったらカウントを減らす必要があり、入力フィールドの数内でカウントを制限する必要もあります。このjsFiddleをチェックしてください

于 2012-08-24T04:20:44.170 に答える
0

各キーアップイベントを確認してください。そして、toggleClass()を使用します..条件を渡すことができるため.. true の場合はクラスを追加します.. false の場合はクラスを削除します

$('.submit').prop('disabled',true); // <-- disable button on load
$('.required').keyup(function() { // <-- bind keyup to both required inputs
    $('.required').each(function(i, v) { // <-- loop through each required field
            $(v).toggleClass('valid',$(v).val().trim().length > 0); // <-- add class if it has text
    }); 
    $('.submit').prop('disabled', $('.valid').length != 2); // button disabled if there's not 2 valid fields
});​

http://jsfiddle.net/nxLeJ/3/

于 2012-08-24T04:21:51.053 に答える
0

C.options.currentPagea への参照があり、count未定義であるため、この例は完全ではありません。

そうは言っても、私にとってはうまくいくので、あなたが何を期待しているのかわかりません。ここで jsFiddle を確認してください。私はあなたのコードを少し修正しました。

于 2012-08-24T04:07:03.690 に答える