本HTCの機能は、「ターゲットエレメントに対する入力文字列の補正」です。
本HTCを適用した<INPUT type="text"><TEXTAREA>上の、次の操作による挿入文字列を文字処理定義に従って動的に補正します。
キーによる文字入力
ペースト操作による挿入文字列
ドロップ操作による挿入文字列
本機能は、Textarea HTCの「◆文字表示」および、ペースト/ドロップ時の補正仕様と同等の機能です。ただし、サーバ字形による代替表示は行わず、そのままのテキストが表示されます。
注意
InputValidator HTCを割り当てるエレメントには、必ず使用フォントを指定してください。指定しなかった場合には、コンテンツのサロゲートペア文字列が文字化けすることがあります。
使用フォントの指定例
<INPUT type="text" style="behavior:url(/JSVRAX/InputValidator.htc);font-family:MS 明朝">
初期表示文字列やスクリプトなどからの設定値については、補正対象とはなりません。これらについては、別途チェックを行ってください。
InputValidator HTCでは、利用者が入力不可文字を入力した際、altChar属性に指定した代替文字に自動補正します。入力抑止は行いたいが、代替文字への自動補正は不要(行いたくない)という場合は、InputValidator HTCは使用せず、JSVRAX.Utility.CharBehavior.Parserクラスを使用し、アプリケーション側で文字列に対する入力抑止文字のチェックを行うようにしてください。
TSFAttacher HTCとInputValidator HTCは、一つのエレメントに対して、同時に割り当てて使用してはいけません。TSFAttacher HTCが組み込まれたエレメントで入力抑止をする場合は、JSVRAXのAPI(JSVRAX.Utility.CharBehavior.Parserクラス)を使用するなど、アプリケーションで別途チェックを実施してください。
自動補正に関する注意事項として、Textarea HTCの「◆文字表示」の注意事項もあわせて参照してください。