2013-06-19 58 views
0

我正在嘗試使用jQuery來統計每個輸入字段中有多少個字符。使用jquery驗證字符長度的表單驗證

目前我有這樣的代碼:

$(document).ready(function(){ 
$('#add_post_title').keyup(function(){ 

     var max = 25; 
     var len = $(this).val().length; 

     if(len > max){ 
      $('#check_title').text('No'); 
     }else{ 
      var char = max - len; 
      $('#check_title').text('Yes'); 
     } 

    }); 

    $('#add_post_desc').keyup(function(){ 

     var max = 25; 
     var len = $(this).val().length; 

     if(len > max){ 
      $('#check_desc').text('No'); 
     }else{ 
      var char = max - len; 
      $('#check_desc').text('Yes'); 
     } 

    }); 
}); 

和HTML表單(簡化了一下):

<form> 
<div id="check_title"><p>No</p></div> <div id="check_post"><p>No</p></div> 
<input type="text" name="title" class="post_input" id="add_post_title" placeholder="Title" /><br /> 
<textarea name="desc" id="add_post_desc" placeholder="Description"></textarea><br /> 
<input type="submit" name="submit" id="add_post_submit" value="Submit" /> 
</form> 

爲什麼裏面的「檢查」格文氏不改變爲Yes時,文本輸入到字段?

感謝

+0

如果我們已解決您的問題,請標記下面的答案之一是正確的。 – jezzipin

回答

2

您正在使用check_desc代替check_post的:

 $('#add_post_desc').keyup(function(){ 

    var max = 25; 
    var len = $(this).val().length; 

    if(len > max){ 
     $('#check_post').text('No'); 
    }else{ 
     var char = max - len; 
     $('#check_post').text('Yes'); 
    } 

}); 

在這裏看到:

http://jsfiddle.net/NxWnv/

1

您的代碼幾乎是罰款。除了在字段$('#add_post_desc')上的檢查將div check_desc設置爲yes而不是div check_post

除此之外,它工作正常。檢查此fiddle