2016-06-22 77 views
-2

我有一張表格,人們可以填寫表格的結果並顯示在頁面上。表單限制爲2000個字符,但是沒有限制可以有多少換行符,所以有人可以每行放一個字符並獲得2000個換行符,這會使頁面變得非常糟糕。我正在尋找限制它們可以輸入到textarea中的行數,所以限制是2000個字符或40行,以先到者爲準。在textarea中限制線條?

我也需要這個來保護粘貼大量文本的人。我看了很多關於這個的其他帖子,但是當我嘗試它們時,沒有任何答案有效。謝謝!

+1

做了什麼來接近你試過嗎?沒有看到企圖就很難給出答案。否則,這將脫離主題太寬泛(或其他)。 – Rasclatt

+0

嘗試此鏈接:https://codepen.io/nicohaemhouts/pen/ogyw​​PB – nywooz

+0

字面上沒有任何工作。我嘗試了幾個不同的代碼示例,將其修改爲適合我的東西,什麼也沒有發生。我厭倦了在這裏提出合理的問題,只能得到低估。 – Treedot

回答

1

你有沒有指定<textarea maxlength="2000"></textarea> - 那將是一個很好的開始。這將限制字符數爲2000.

您也可以檢查輸入密鑰(如果我正確回憶起來,則爲keycode=="13")並且a)禁止使用或b)僅在完全停止或之後例如允許使用它。 > 30個字符。只是一個建議

儘管指定了最大長度。那麼只有這樣才能輸入。請注意,中斷計爲字符,並從剩餘的字符中扣除。

請去this,你會看到。

function textCount(val) { 
 
    var len = val.value.length; 
 

 
    if (len >= 500) { 
 
     val.value = val.value.substring(0, 2000); 
 
     $('#amtleft span').text(0); 
 
    } else { 
 
     $('#amtleft span').text(2000 - len); 
 
    } 
 
} 
 
textCount($('#longText').get(0)); 
 
$('#longText').keyup(function() { 
 
    textCount(this); 
 
});
textarea{height:150px; 
 
width:300px;}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> 
 
<textarea id='longText' ></textarea><br> 
 
<span id='amtleft'><label>&#40;<span>2000</span> characters left&#41;</label></span>