2010-04-05 71 views
0

我試圖驗證使用jQuery的html頁面,但沒有任何反應。這是一個簡單的頁面,但文本框未經驗證。驗證使用jQuery

這是代碼:

<link rel="stylesheet" type="text/css" href="style.css" /> 
<script type="text/javascript" src="~/jquery.js/"></script> 
<script type="text/javascript" src="~/jquery-validate/jquery.validate.js/"></script> 
<script type="text/javascript"> 
    $(document).ready(function(){ 
    var validator = $("#submitForm").validate({ 
      debug: true, 
      rules: { 
       author: "required", 
       quote: "required" 
      }, 
      messages: { 
       author: "Name of Author required" 
       quote: "Please enter Quote" 
      }, 
      errorPlacement: function(error, element) { 
       error.appendTo(element.parent().top()); 
      } 
    ); 
    }); 
    </script> 

<body> 

<div class="container"> 
<div class="center_div"> 
<h2>Submit Your Quote</h2> 
<fieldset> 
<form id="submitForm" action="qinsert.php" method="post"> 
<div class="error" style="display:none"></div> 
<div class="field"> 
<label>Author: </label> 
<input name="author" type="text" class="required" minLength=3> 
<span class="error"></span> 
</div><br /> 
<div class="field"> 
<label>Quote: </label> 
<textarea name="quote" cols=22 class="required" minLength=5></textarea> 
<span class="error"></span> 
<br /> 
</div> 
<input id="button1" type="submit" value="Submit" class="submit" /><br /> 
<input id="button2" type="reset" value="Reset" /> 
</form> 
</fieldset> 
</div> 
</div> 

什麼是錯的代碼?謝謝!

回答

1

只是一個快速的一瞥,它看起來像你缺少在JavaScript關閉「}」。我認爲你沒有關閉驗證({正確。嘗試在你的前面添加}大括號);在errorPlacement函數之後。

$(document).ready(function(){ 
var validator = $("#submitForm").validate({ 
     debug: true, 
     rules: { 
      author: "required", 
      quote: "required" 
     }, 
     messages: { 
      author: "Name of Author required" 
      quote: "Please enter Quote" 
     }, 
     errorPlacement: function(error, element) { 
      error.appendTo(element.parent().top()); 
     } 
    }); 
    }); 
+0

請參閱您的回覆帖子的評論以獲取腳本標記的進一步說明src屬性 – Tommy 2010-04-05 23:07:51

1

我以前沒有使用jQuery的驗證插件,但顯然是有缺失的逗號這裏:

messages: 
{ 
      author: "Name of Author required", 
      quote: "Please enter Quote" 
}, 

沒有這個插件,手工,所以我現在還不能得到一個樣本運行的代碼。

我個人覺得驗證的聲明方式更吸引我的,這意味着,而不是直接把驗證要求到您的JavaScript代碼,你可以聲明其標記在HTML裏面。然後,驗證引擎會檢查每個必填字段,等等

如果這聽起來合理的給你,那麼我建議另一個驗證插件: jQuery inline validation

0

檢查路徑到您的jQuery庫。他們在名爲~的目錄中,並且後綴/似乎不太可能。如果他們在同一個目錄中,則正確的語法是:

<script type="text/javascript" src="jquery.js"></script>