ホームページ >ウェブフロントエンド >jsチュートリアル >js の文字数制限により、1 つの漢字が 2 文字としてカウントされます

js の文字数制限により、1 つの漢字が 2 文字としてカウントされます

巴扎黑
巴扎黑オリジナル
2017-09-13 09:38:101686ブラウズ

場合によっては、ユーザー入力を制限したり、特定の長さの文字列をインターセプトしたりする必要があるため、そのような関数コードを使用する必要があります。ここでは、Script House のエディターがそれを共有します

html


<input type="text" id="txt">

core js code


//字符串截取
function getByteVal(val, max) {
	var returnValue = &#39;&#39;;
	var byteValLen = 0;
	for (var i = 0; i < val.length; i++) {
		if (val[i].match(/[^\x00-\xff]/ig) != null)
		byteValLen += 2;
		else
		byteValLen += 1;
		if (byteValLen > max)
		break;
		returnValue += val[i];
	}
	return returnValue;
}
$(&#39;#txt&#39;).bind(&#39;keyup&#39;,function(){
	var val=this.value;
	if(val.replace(/[^\x00-\xff]/g,"**").length>14){
		this.value=getByteVal(val,14)
	}
})

注: コードは jquery バインディング イベントを使用するため、jquery フレームワークを追加する必要があります。

以上がjs の文字数制限により、1 つの漢字が 2 文字としてカウントされますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。