kintoneの入力チェックを「設定表だけ」で追加する|半角・文字数・禁止文字をまとめて制御
kintoneでアプリを作っていると、こんな入力ルールを頼まれることがあります。
社員番号を半角数字6桁にしたい
商品コードに全角文字や記号を入れさせたくない
備考を100文字以内にしたい
特定の機種依存文字を禁止したい
間違った入力のまま保存されるのを防ぎたい
一つずつJavaScriptを書くことはできます。
ただ、項目が増えるたびに処理を追加し、PCとモバイルの保存画面を確認し、エラー表示まで調整するのは意外と面倒です。
そこで、入力ルールを一か所にまとめて設定できるテンプレートを作りました。
書き換えるのはRULESだけ
たとえば社員番号を「必須・半角数字・6文字」にしたい場合は、設定表に次のように記載します。
employee_no: {
label: '社員番号',
required: true,
digits: true,
exactLength: 6
}`employee_no` はkintoneで設定したフィールドコードです。
判定処理そのものを書き足す必要はありません。
対応している入力ルール
必須入力
半角数字のみ
半角英数字のみ
最大文字数
最小文字数
固定文字数
禁止文字
正規表現
同じフィールドに複数のルールを設定できます。
たとえば社員番号に「必須」「半角数字」「6文字」を設定し、全角3文字を入力した場合は、判定順で最初に見つかったエラーを表示します。
一方、社員番号と商品コードの両方が間違っている場合は、片方だけで処理を止めず、両方のフィールドへ同時にエラーを表示します。
対応画面
PC版は次の3画面に対応します。
新規登録
編集
一覧画面のインライン編集
モバイル版は次の2画面に対応します。
新規登録
編集
モバイルの一覧インライン編集には対応していません。kintone側に該当するイベントがないためです。
こんな人向けです
kintoneの入力ミスを保存前に止めたい
JavaScriptをゼロから書くのは難しい
複数項目のルールを一か所で管理したい
コードだけでなく導入手順とテスト項目も欲しい
購入前に確認してください(しばらく無料)
基本対象は「文字列(1行)」フィールドです。
サブテーブル、重複登録の確認、日付比較、ほかのレコードの参照、複数フィールド間の比較には対応していません。
また、既存のJavaScriptやプラグインとの組み合わせは環境ごとに異なります。必ずテスト用アプリで確認してから本番へ反映してください。
購入後に受け取れるもの
ZIPファイルに次の5ファイルを収録しています。
`01_kintone_validation.js` — そのまま登録できる本体
`02_設定例.txt` — 8種類のルール設定例
`03_導入・テスト手順.txt` — 導入、確認、元に戻す方法
`04_README.txt` — 対応範囲と制限事項
`05_静的QA結果.txt` — 出荷前の確認内容
「コードだけ渡されても、どこを確認すればいいか分からない」という状態にならないよう、画面別のテスト項目まで同梱しています。
ダウンロード
以下のZIPファイルをダウンロードしてください。
最短の導入方法
ZIPを展開します。
`02_設定例.txt` を見ながら、`01_kintone_validation.js` 上部の `RULES` を書き換えます。
kintoneのJavaScriptカスタマイズ画面で、PC用ファイルとして追加します。
モバイルでも使う場合は、スマートフォン用にも同じファイルを追加します。
アプリを更新します。
`03_導入・テスト手順.txt` に沿って正常値とNG値を確認します。
最初から本番アプリへ入れず、テスト用アプリまたは本番アプリのコピーで確認してください。
設定例:商品コード
半角英数字、最大12文字にする例です。
product_code: {
label: '商品コード',
alphanumeric: true,
maxLength: 12
}`ABC123` は保存できます。
`ABC123` や `ABC-123` は保存できません。
設定例:禁止文字
product_name: {
label: '商品名',
forbiddenChars: ['①', '②', '③', '㈱']
}禁止対象は配列の中へ追加できます。
設定例:独自形式
大文字英字3文字+数字4文字に限定する例です。
custom_code: {
label: '管理コード',
regex: /^[A-Z]{3}[0-9]{4}$/
}`ABC1234` は保存できます。
`abc1234`、`AB1234`、`ABC1234` は保存できません。
正規表現の編集にはJavaScriptの知識が必要です。慣れていない場合は、ほかの7種類の設定だけを使用してください。
エラーメッセージも変更できます
標準メッセージをそのまま使用できますが、項目ごとに変更することもできます。
employee_no: {
label: '社員番号',
required: true,
digits: true,
exactLength: 6,
messages: {
required: '社員番号は必須です。',
digits: '半角数字だけを使用してください。',
exactLength: '社員番号は必ず6桁にしてください。'
}
}詳しい設定例はZIP内の `02_設定例.txt` にまとめています。
使用上の注意
フィールド名ではなくフィールドコードを指定してください。
一覧インライン編集では、対象フィールドを一覧に含めて確認してください。
ファイル追加後はアプリ設定を保存し、アプリを更新してください。
他のカスタマイズと競合する場合は、本ファイルだけを適用して切り分けてください。
一部の絵文字や結合文字は、見た目の文字数とJavaScript上の文字数が一致しない場合があります。
動作しない場合に備え、外し方も `03_導入・テスト手順.txt` に記載しています。
この商品の位置づけ
これは「何でもできる万能コード」ではありません。
文字列項目でよく使う入力ルールを、JavaScriptに詳しくない人でも設定表として管理しやすくするStarter版です。
重複登録防止、条件付き必須、日付の前後関係、項目間比較などは含みません。
必要な機能と対象外を確認したうえで利用してください。
複数項目の組み合わせ重複も防ぎたい方へ
「顧客コード+対象年月」のように、複数項目がすべて一致した場合だけ保存を止めたい用途には、組み合わせ重複チェックStarterを用意しています。
kintoneで「複数項目の組み合わせ重複」を保存前に防ぐ|設定表だけで導入
公式仕様の参照先
本商品は2026年8月18日時点の公式仕様を確認して作成しています。
