1

jquery を使用してフォームを検証したい (フィールド 'name1' が必須で、'email' も必須であり、電子メール形式である必要があります。チュートリアルに従いましたが、うまくいきませんでした。どうすれば修正できますか?

前もって感謝します。

私のコード:

     <html>
        <head>
   <script src="/webvanta/js/jquery/1.4/jquery-1.4.2.min.js" type="text/javascript"></script>
<script src="/webvanta/js/jquery/1.4/plugins/form/jquery.form.js" type="text/javascript"></script>
<script src="/webvanta/js/jquery/1.4/plugins/validate/jquery.validate.min.js" type="text/javascript"></script>
        </head>
        <body>
        <script type="text/javascript">
          $(document).ready(function() {
           $("#myform").validate({
           rules: {
             name1: "required",
             email: {
               required: true,
               email: true
             }
           },
           messages: {
             name1: "Please specify your name",
             email: {
               required: "We need your email address to contact you",
               email: "Your email address must be in the format of name@domain.com"
             }
           }
        })
        });

        </script>

        <?php include 'header.php'; ?>

        <form id = "myform" action="picture.php" method="get">
        Picture name: <input name="name1" class="required"   /><br>
        Email: <input name="email" class="required"  />

        <input type="submit" value="Click" />
        </form>
        <br>




        </body>
        </html> 
4

3 に答える 3

2

非常に単純な ajax の例:

   $("#submit").click( function() { 

    var str = $("#your-form").serialize();


    $.ajax({
      type: "POST",
      url: "url-to-your-file.php",
      data: str,
      success: function(msg) {

          if(msg=="1") {//let's say 1 means error, do stuff here}
          if(success=="0){//success, do stuff here}
          }
    });


    });

あなたのphpファイルで、入力をチェックして検証してください。OK の場合は 0 をエコーし​​、そうでない場合は 1 をエコーし​​ます。

于 2012-08-13T11:21:13.320 に答える
1

使用するライブラリの最新バージョンでコードを試してください。古いライブラリと古いプラグインには多くのバグが含まれており、準拠していない可能性があります。

于 2012-08-13T11:12:44.997 に答える
1

まず、この関数を自分で使用したことがないため、提供された方法が有効かどうかわかりません。ただし、これは jQuery のドキュメントで説明されている方法ではありません。@Tim が提案したように、まず最新の jQuery バージョンに切り替えてから、このドキュメント ページの説明に従って試してみてください。

http://docs.jquery.com/Plugins/Validation#source

そうは言っても、サーバー側の検証も追加する必要があるので、代わりに ajax とサーバー側の検証 (php ファイルなどから) を使用します。次に、サーバー側の検証とクライアント側の検証の両方に同じメソッドを使用します。ただし、データベース層を使用していない場合、サーバー側の検証はやり過ぎかもしれません。

于 2012-08-13T11:13:29.103 に答える