2012-04-04 9 views
2

連絡先フォームのjQueryの検証が書かれていません。入力フォームに文字が含まれているかどうかをチェックする簡単なコードを書いた。任意の文字がある場合、PHPコードを実行して、私に電子メールを送るかもしれません。それ以外の場合は、エラーチェックボックスを表示して、顧客にそのことを再確認するよう指示します。ここでは、コードは次のようになります。基本的なjQuery連絡先フォームの問題

(function($){ 
     $('.required',$form).each(function(){ 
     var inputVal = $('form-element-name').val(); 
     var inputVal2 = $('form-element-email').val(); 

       if(inputVal == ''){ 
        $('errorbox1').addClass('errormsg1'); 
       } 

       else if(inputVal2 == '') { 
        $('errorbox2').addclass('errormsg2'); 
       } 
      } 
    } 

Inputvalは名の入力フィールドで、inputval2は、電子メールのための入力フィールドです。さらに、Errorbox1は空のコンテナで、errormsg1はerrorbox1に背景画像のエラーを通知するクラスになります。

Here is a jsFiddle

+0

あなたのフィドルの例で、JSLintをチェックしてください。これを適切にデバッグする前に、修正する必要のある多くのエラーがあります。 –

答えて

0

$('errorbox1')$('errorbox2')

$('.errorbox1')$('.errorbox2')する必要がある場合クラスセレクタ

又は

$('#errorbox1')$('#errorbox2')場合errorbox1前IDセレクタ

注ドット/# 。以下は

あなたはjQueryのセレクタからハッシュを欠けているように見えます

http://api.jquery.com/class-selector/

http://api.jquery.com/id-selector/

+0

良い点、それはまだちょうどdoesntの仕事:( –

+0

@ShadAsingerチェックevilunix答え、彼はあなたのコードに追加バグを掲載:P –

+0

はerrorbox1は、クラスまたはIDであれば、後者の場合には、それは#の代わりにする必要があります依存/: - jsfiddle.net/U6xGA/3はまだ働いていない:( –

1

、クラスおよびIDセレクタへの参照である - あなたの代わりに$('form-element-name')$('#form-element-name')を持つべきである - これ意志そのIDに基づいて要素を選択します。

それとも - ドットではなく、クラスによって選択します。

フォームのonsubmitイベントにコードを入れてからreturn false;を入力するか、e.preventDefault();を使用してフォームの送信をキャンセルする必要があります。

+0

本当にうれしいです。今はうまくいくようですが、私がチェックすると、エラーボックスが点滅していることがわかります。そして、それは私に本質的に私に電子メールを送るPHPに私をリダイレクトします。 –

+0

ここにhtml/css/jqueryのすべてがあります:http://jsfiddle.net/U6xGA/ –

+0

上記を参照してください - エラーメッセージを表示した直後にフォームの提出をキャンセルしてください。 – evilunix

関連する問題