2015-01-03 61 views
0

這是我的代碼:jQuery驗證引擎不工作,收到消息:不是一個函數

<script src="//code.jquery.com/jquery-1.11.2.min.js"></script> 
<script type="text/javascript" src="/js/validation/jquery.validationEngine-en.js"></script> 
<script type="text/javascript" src="/js/validation/jquery.validationEngine.js"></script> 

<script type='text/javascript'> 
     $(document).ready(function() { 

      $(".register_form").validationEngine(); 

      $(".register_form").bind("jqv.field.result", function(event, field, errorFound, prompText){ 
       console.log(errorFound) ; 
      }); 
     }); 
</script> 

    <form id="contact-form" action ="<?php echo $this->basePath()."/user/register" ?>" method ="post" name="register_form" class="register_form"> 
        <div class ="col-md-6"> 
         <div class="text-fields"> 
          <div class="float-input"> 
           <input name="username" id="username" type="text" class ="validate[required,custom[onlyLetterNumber],maxSize[20]] text-input" placeholder="username" > 
           <span><i class="fa fa-user"></i></span> 
          </div> 
         </div> 
        </div> 
        <button type="submit" name="contact-submit" id="register_submit"> 
           <i class="fa fa-user"></i> 
           Register 
        </button> 
    </form> 

正如你看到的我只有一個輸入文本字段(用戶名)。但是當我在控制檯加載頁面我得到這個錯誤信息: **

TypeError: $(...).validationEngine is not a function 
$(".register_form").validationEngine(); 

**

爲什麼?我已經檢查從計算器,具有相關的問題多的職位,但他們不爲我工作

+0

你可以通過查看瀏覽器的控制檯確認在加載相對引用到js文件時沒有404s嗎? (提示 - 你可能不得不擺脫路徑中的前導'/') – karthikr

+1

它不是404,即時通訊獲取代碼,我相信與我有另一個版本的jquery有衝突,有沒有辦法保持所有的jQuery版本?\ –

+1

請不要這樣做。代碼變得難以維護。乾淨的做法是一個更好的主意。如果你已經加載了jquery,爲什麼不使用它?從jquery的外觀上刪除這個jquery的引用,jquery似乎不是問題 - 它是驗證庫。 – karthikr

回答

1
<script type="text/javascript" src="/js/validation/jquery.validationEngine-en.js"></script> 
<script type="text/javascript" src="/js/validation/jquery.validationEngine.js"></script> 

我認爲你不應該有那些領先的斜線開頭:

<script type="text/javascript" src="js/validation/jquery.validationEngine-en.js"></script> 
<script type="text/javascript" src="js/validation/jquery.validationEngine.js"></script> 

的因此路徑是錯誤的,並且庫沒有加載。然後調用尚未定義的函數/方法。