この記事の例では、JS が文字列内のバイト数を決定し、長さをインターセプトする方法を説明します。参考のために皆さんと共有してください。詳細は次のとおりです:
これはプロジェクト制作中に蓄積したものなので、エフェクトを貼り付けます。
したがって、ページでは 2 つのことを検出する必要があります。1 つはバイト数、もう 1 つは文字数です。
データベースではタイトルの長さが 200 バイトである必要があるため、具体的な JS コードは次のとおりです:
/************************************************************************* * CodeBy:SCY CodeDate:2011年3月11日 12:01:16 * DESC:主要是用来判断当前输入的字节数,以便做到限制输入标题的长度功能 **************************************************************************/ var matchWords; function notifyTextLength() { var inputNum = document.getElementById("txtTitle").value.replace(/[^\x00-\xff]/g, "**").length; //得到输入的字节数 if (inputNum <= 200) { matchWords = document.getElementById("txtTitle").value.length; document.getElementById("inputedWord").innerHTML = inputNum + "字节," + matchWords + "字符"; document.getElementById("inputtingWord").innerHTML = (200 - inputNum) + "字母,"+(Math.round(((200-inputNum)/2)-0.5))+"汉字"; } if (inputNum > 200) { document.getElementById("txtTitle").value = document.getElementById("txtTitle").value.substring(0, matchWords); //如果超过200字节,就截取到200字节 } }
このうち、matchWords はバイト数が 200 未満の場合に一致する文字数を表し、inputNum は入力バイト数を表します。
タイトルに入力されたバイト数が200バイトを超える場合、文字数に応じてインターセプトされます。
HTML コードは次のとおりです:
<input id="txtTitle" type="text" class="inputText" runat="server" onpropertychange="notifyTextLength();" /> 当前已经输入<span id="inputedWord" style="color:red"></span> 还可以输入<span id="inputtingWord" style="color:Red;"></span>
さらに JavaScript 関連のコンテンツに興味のある読者は、このサイトの特別トピックをチェックしてください: 「JavaScript 検索アルゴリズム技術の概要」、「JavaScript アニメーションの特殊効果と技術の概要」 "、"JavaScript エラーとデバッグ手法の概要"、"JavaScript データ構造とアルゴリズム手法の概要"、"JavaScript トラバーサル アルゴリズムと手法の概要" と "JavaScript 数学の操作使用法まとめ》
この記事が JavaScript プログラミングのすべての人に役立つことを願っています。