TssGrid 例: 数値入力 — 全角→半角 & 入力エラー IME堅牢
業務フォームでは全角数字の誤入力がつきもの。TssGrid の type:'number' は全角数字・符号を既定で半角化します(123→123、1,234.5→1234.5)。
数字以外を入れたときの扱いは invalidMode で選べます:
・revert(既定)=黙って元の値に戻す(軽快)
・keep=セルを赤くしてエラー表示+onInvalid でメッセージ(折角の入力チェックを活かす)
どちらのモードでも全角→半角の正規化は効きます。「数量」列に 123 や あ10 を入れて挙動を比べてください。
差し込み(抜粋)
new TssGrid(host, {
invalidMode: 'keep', // 不正セルを赤く保持(既定は 'revert')
onInvalid: (rej) => showMessage(rej),// 弾かれた時に呼ばれる(両モード共通)
columns: [
{},
{ type:'number', thousands:true }, // 全角→半角は既定でON
{ type:'number', prefix:'¥', /* zenkaku:false で無効化も可 */ },
],
});