2010-10-11 38 views
0

我需要在我的應用程序中強制執行字符數限制。我從網上找到了一些JavaScript,但他們不工作,這是我的代碼。我會非常感激,如果有人可以看到代碼&糾正什麼導致問題。使用Javascript不工作的文本框中的字符數字腳本?

<HTML> 
<HEAD> 
<script type="text/javascript" src="http://ajax.googleapis.com/ 
ajax/libs/jquery/1.4.2/jquery.min.js"> 
</script> 
<script type="text/javascript"> 
$(document).ready(function() 
{ $("#update").keyup(function() 
{ 
var box=$(this).val(); 
var main = box.length *100; 
var value= (main/140); 
var count= 140 - box.length; 
if(box.length <= 140) 
{ 
$('#count').html(count); 
} 
else 
{ 
alert('Character Limit Exceeded!'); 
return false; 
} 
});}); 
</script> 
</HEAD> 
<BODY> 
<textarea id="update" rows="10" cols="3"></textarea> 
<div align="left" id="character-count"> 
<div id="count">140</div> 
</div> 
</BODY> 
</HTML> 
+2

您可能希望與The Old Lady聊天以瞭解代碼縮進。這是一種人性化的習俗。 – Pointy 2010-10-11 19:48:25

+0

有些人有一個破碎的大寫鎖定鍵;對於其他人來說,這是標籤。 – 2010-10-11 20:14:41

回答

0

您的代碼將無法處理專人保管按下一個鍵(如直到鬆開按鍵不會觸發KEYUP事件)。它也不會處理粘貼文本具有比允許數量的字符..

看一看這個插件http://remysharp.com/2008/06/30/maxlength-plugin/可處理大部分情況下..

0

腳本中使用Javascript

文本框/ textarea的計數的字符
<script type="text/javascript"> 
    var count = "175"; 
    function limiter() { 
     var tex = document.myform.comment.value; 
     var len = tex.length; 

     if(len > count) { 
      tex = tex.substring(0,count); 
      document.myform.comment.value =tex; 
      return false; 
     } 

     document.myform.limit.value = count-len; 
    } 
</script> 

<body> 
    <form name="myform" METHOD=POST> 
     <textarea name=comment wrap=physical rows=3 cols=40 onkeyup=limiter()></textarea><br> 
     <script type="text/javascript"> 
      document.write("<input type=text name=limit size=4 readonly value="+count+">"); 
     </script> 
    </form> 
</body> 
相關問題