[英]How to extract each character in a textarea using Javascript (not jQuery)
我有一個簡單的經典ASP頁面,該頁面使用,用戶可以在其中輸入任何標准鍵盤鍵和Enter鍵(如果需要,甚至可以輸入特殊的ALT nnn值)
當前的HTML代碼如下:
Enter your message - Characters left
<input type="text" name="chl" value="<%=Cclen%>" size=3 diabled readonly>
<br />
<textarea id="SMSmsg" name="SMSmessage" MAXLENGTH="600" rows=5 cols=35 onKeyUp="textCounter(this)"></textarea>
JavaScript函數testcounter當前使用indexOf(“ \\ n”) ,每次釋放鍵時都會遍歷整個文本區域 。 我還需要確定是否已輸入其他特殊字符,因為它們在發送短信時合計為2個字符
總而言之,有人可以建議一些JS代碼,讓我確定用戶輸入的每個字符(最好將其轉換為ascii值),以便我可以准確地計算出字符數,如果超過該字符,則將其顯示給用戶。最多160個字符,但發送短信時我也可以處理306個字符和最多457個字符
也許可以使用MATCH函數,因為它只需要檢查整個字符串一次,但其他任何建議都值得贊賞
在此先感謝您的歉意,如果有人需要JS代碼
聽起來您想聽按鍵事件,但是,當用戶粘貼到<textarea>
時會發生什么呢? 此外, JavaScript不允許您選擇字符編碼,而是使用UTF-16而不是ASCII進行所有操作 。
當您要計算字節數時,最適合您的解決方案可能是轉換為Blob並取其大小
function getByteLength(str_data) {
var b = new Blob([str_data]);
return b.size;
}
getByteLength('a\u2020b'); // 5
var arrayOfCharacters = document.getElementById('SMSmsg').value.split('');
var numberOfCharacters = arrayOfCharacters.length;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.