2011-12-24 11 views
3

jquery validation plugin 1.9.0を使用しています。私はここからプラグインをダウンロードしました:http://bassistance.de/jquery-plugins/jquery-plugin-validation/jquery numberOfInvalids()関数が機能していません

私はこのリンクhttp://docs.jquery.com/Plugins/Validation/Validator/numberOfInvalids から次のコードをコピーして、自分のフォームにあるエラーの数を調べました。しかし、それは動作していません。

$(document).ready(function() { 
    $('a.delete').click(function() { 
     invalidHandler: function() { 
      $("#summary").text(validator.numberOfInvalids() + " field(s) are invalid"); 
     } 
    }); 
});  

そして

<div id="summary" class="summary"> </div> 
<a href="#" class="delete">click</a> 

マイフォームヘッドは以下のようになります。私は私の形式のいずれかの検証関数を呼び出すことはありません

<form class="uniform" autocomplete="off" id="myForm" enctype="multipart/form-data" action="<?echo base_url();?>addteacher_salary/add " method="post" name="myForm"> 

、私は頭の中に検証プラグインを読み込みますタグと検証が機能します。

コードに間違いがありますか教えてください。

編集

マイコンプリートフォームは次のようになります。

<form class="uniform" autocomplete="off" id="myForm" enctype="multipart/form-data" action="<?echobase_url();?>addteacher_salary/add " method="post" name="myForm">  

       <fieldset> 
        <legend>Select A Teacher</legend> 
        <dl class="inline"> 


         <dt><label for="teachername">Teacher Name <span class="hello">*</span></label></dt> 
         <dd> 
          <?php echo form_dropdown('teacherid', $dropdown_teacher,'', 'class="medium required" id="teacherid"'); ?> 



         </dd> 

         <dt><label for="salary_month">Month of Salary <span class="hello">*</span></label></dt> 
         <dd> 
         <?php $month_options = array(  
                 '' => 'Select', 
                 'January' => 'January', 
                 'February' => 'February', 
                 'March' => 'March', 
                 'April' => 'April', 
                 'May' => 'May', 
                 'June' => 'June', 
                 'July' => 'July', 
                 'August' => 'August', 
                 'September' => 'September', 
                 'October' => 'October', 
                 'November' => 'November', 
                 'December' => 'December', 
                 ); 


             echo form_dropdown('salary_month', $month_options,'', 'class="medium required"' );?> 

         </dd> 

         <dt><label for="salary_year"> Year of Salary <span class="hello">*</span></label></dt> 
         <dd> 



         <?php 
          $year_options = array(  
                 '' => 'Select', 
                 '2010' => '2010', 
                 '2011' => '2011', 
                 '2012' => '2012', 
                 '2013' => '2013', 
                 '2014' => '2014', 

                 '2015' => '2015', 
                 '2016' => '2016', 
                 '2017' => '2017', 
                 '2018' => '2018', 
                 '2019' => '2019', 
                 '2020' => '2020', 
                 '2021' => '2021', 
                 '2022' => '2022', 
                 '2023' => '2023', 
                 '2024' => '2024', 
                 '2025' => '2025', 
                 '2026' => '2026', 
                 '2027' => '2027', 
                 '2028' => '2028', 
                 '2029' => '2029', 
                 '2030' => '2030', 
                 ); 


             echo form_dropdown('salary_year', $year_options,'', 'class="medium required"' );?> 

         </dd> 

         <dt><label for="salary_disbursement_date">Salary Disbursement Date <span class="hello">*</span></label></dt> 
         <dd> 
          <input type="text" name="salary_disbursement_date" id="datepicker2" maxlength="10" class="medium required" /> 

         </dd> 



         <dt><label for="salaryamount">Salary Amount <span class="hello">*</span></label></dt> 
         <dd> 
          <input type="text" name="salary_amount" id="salary_amount" value="" class="medium required number" /> 

         </dd> 




        </dl> 

       <div class="buttons"> 
         <button id="submit_item" name="submit_item" type="submit" class="button">Submit Button</button> 

        </div> 

       </fieldset> 
      </form> 
+0

フォームフィールドはどのように見えますか? –

+0

@Andrew Whitakerあなたの返事に感謝します。上記の投稿の編集部分を確認してください。もう一度おねがいします:) –

答えて

4

numberOfInvalidsを呼び出す前にフォームvalidを呼び出してください:

$(document).ready(function() { 
    $('a.delete').click(function() { 
     $("#myForm").valid(); // Make validate calculate the number of invalid fields. 
     var numInvalid = $("#myForm").numberOfInvalids(); 

     $("#summary").text(numInvalid + " field(s) are invalid"); 
    }); 
});  

例:http://jsfiddle.net/UURz2/

+0

ありがとうございました。私はスクリプトでいくつかの変更を加えなければなりませんでしたが(32行目の検証プラグインへのリンクを先頭のタグの直前までカットしなければなりませんでした)たくさんの男...あなたは私をたくさん助けました。 :) –

関連する問題