0

簡単なフォーム検証を機能させようとして、スタックに関するいくつかの投稿を見てきましたが、送信ボタンが無効になっているだけです。入力フィールド内にテキストを入力したら、無効化を解除することを意図しています。

これまでのところ

Jクエリ

$('input:submit').attr('disabled',true);

$('input').change(function(){
    if($('input').val() != ''){ 
        $('input:submit').attr('disabled',true);
    } else {
        $('input:submit').removeAttr('disabled');
});

HTML

<form action="send.php" method="post">
    <input id="name" name="name" type="text" required placeholder="Name"/>
    <input id="email" name="email" type="email" required placeholder="Enter a valid email address"/>
    <input name="submit" id="subscribe" type="submit" value="Subscribe for free"/>
</form>
4

5 に答える 5

1

のステートメントを変更する必要があると思います。これとif-elseは別のことを試みている場合はお知らせください--

$('input:submit').attr('disabled',true);

        $('input').change(function(){
            if($('input').val() != ''){ 
                  $('input:submit').removeAttr('disabled');
            }else{
                $('input:submit').attr('disabled',true);
            }
        });

フィドル - http://jsfiddle.net/UcQhw/

于 2013-07-30T08:24:01.230 に答える
1

以下のコードを試してください:

 //$('input:submit').attr('disabled',true);

    $('input').change(function(){
        if($('input').val() != ''){ alert(1);
             $('input:submit').attr('disabled',false);
        }else{alert(2);
             $('input:submit').attr('disabled', true);
        }
    });

コード: http://jsfiddle.net/WchJ9/

于 2013-07-30T08:32:01.050 に答える
1

if-else ブロックでステートメントを交換する必要があります。また、イベントのソースを取得するために $(this) を使用します。

ライブデモ

  $('input:submit').attr('disabled', true);
   $('input').change(function () {
       if ($(this).val() !== '') {
           $('input:submit').attr('disabled', false);
       } else {
           $('input:submit').prop('disabled', true);
       }
   });

すべてのテキスト フィールドが空であってはならないことを確認したい場合は、すべての入力を繰り返す必要があります。classページ上のすべてを取得するのではなく、特定のテキストボックスを取得するように割り当てる必要があります。クラスセレクターを使用して、クラスごとに要素を取得できます。

ライブデモ

$('input:submit').attr('disabled', true);
$('.cls').change(function () {
   blankFields = $('.cls').filter(function () {
       return this.value == '';
   });
   if (blankFields.length === 0) $('input:submit').attr('disabled', false);
   else $('input:submit').prop('disabled', true);
});
于 2013-07-30T08:24:18.863 に答える