FAQ:独自の入力検証を行い、その結果によりメッセージを表示したい
## 回答
[スクリプト](/ja/manual/table-management-script)を使用してください。
---
## 概要
[スクリプト](/ja/manual/table-management-script)で独自の入力検証を行う場合はイベント発火系スクリプトの[$p.events.before_validate](/ja/manual/script-events-before-validate)で独自の入力検証と結果メッセージの表示処理を実装してください。
## 操作手順
1. エディタタブから数値Aの項目を有効化してください。
1.[スクリプト](/ja/manual/table-management-script)を新規作成し、以下のスクリプトの内容を記載し、出力先には「編集」をチェックして更新します。
1. 新規にレコード作成し、編集画面で数値Aに空白や100以外を入力して「更新」ボタンを押します。
### 実行結果
![image](https://pleasanter.org/binaries/2b731e1d1ce54532a6c09ce6adfde817)
![image](https://pleasanter.org/binaries/a0c42c4ceed249d7a89a689e931b99a1)
## サンプルコード
##### JavaScript
```
$p.events.before_validate_Update = function (args) {
var myNumA = $p.getControl('NumA').val()
if (myNumA == "") {
$p.clearMessage();
$p.setMessage('#Message', JSON.stringify({
Css: 'alert-warning',
Text: '未入力です。数値を入力してください。'
}));
return false; //falseのときは処理が止まり、更新されない
} else if (myNumA != 100) {
$p.clearMessage();
$p.setMessage('#Message', JSON.stringify({
Css: 'alert-error',
Text: '数値は100を入力してください。'
}));
return false; //falseのときは処理が止まり、更新されない
} else {
return true; //trueのときは更新される
}
}
````
## 関連情報
<div id="ManualList"><ul><li><a href="/ja/manual/table-management-script">テーブルの管理:スクリプト</a><span>2024/10/08 up</span></li></ul></article>
<ul><li><a href="/ja/manual/script-events-before-validate">開発者向け機能:スクリプト:$p.events.before_validate</a><span>2023/10/05 up</span></li></ul></article></div><input id="SearchTextHidden" type="hidden" value="" />