pirkak公式サイト|株式会社 オリエンタルアーツ
HOMEpirka TOP > サンプル集
pirka サンプル集

> 戻る

自動チェックの指定方法


≪サンプル説明≫  

項目01、項目02に値を入力し実行ボタンをクリックしてください。
項目01は未入力時に、項目02は漢字以外が入力された時(未入力はOK)にエラーが表示されます。
エラーが存在しないときはOK画面が表示されます。


≪作成時注意点≫ 

・自動チェックを行うにはコンストラクタでaddCheckメソッドを使用してチェッカーを登録します。

・チェックはチェッカーの登録順に行われます。

・チェックでエラーとなったときアクションイベントを呼び出さないようにするには
 チェック登録の最後にaddErrorCheckReturnerメソッドを呼び出しリターナーを登録してください。

・HTMLファイル中にname="errorMessage"のSPANタグが存在するとエラーメッセージがその領域に
 自動的に表示されます。

・エラーとなった項目は標準ではバックカラーが赤色にエラー強調されます。

・入力フィールドのID属性と同じ値のfor属性を持つLABELタグもエラー強調されます。

・定義済みのチェッカーとしてPirkaCheckerの各種オブジェクトやクラスが存在します。
 詳細はマニュアル等を参照してください。

・以下にチェッカーの登録例を示します。

 【例】
・HTMLファイル
 <span name="errorMessage" style="color: #ff0000"></span>

 <label name="label_text01" for="id_text01">項目01</label>
 <input type="text" name="text01" id="id_text01"> 未入力チェック<br>

 <label name="label_text02" for="id_text02">項目02</label></td>
 <input type="text" name="text02" id="id_text02">漢字のみ入力可能

 <input type="submit" name="addButton" value="登録">

・コンストラクタ
  addCheck("text01", PirkaChecker.required);
  addCheck("text02", new PirkaCheckerString(PirkaCheckerStringChars.WIDE));
  addErrorCheckReturner();

・また、setOfficialFieldNameメソッドを使用してフィールドに日本語フィールド名を
 を設定することができます。これはエラーメッセージの項目名に使用されます。

 【例】FieldMap field = getFieldMap();
    field.setOfficialFieldName("text01", "項目01");
    field.setOfficialFieldName("text02", "項目02");

・自動チェックが行われるアクションメソッドはsubmitボタン、イメージボタン
 等のブラウザーより入力データがWEBサーバに送信されるときのみです。

 リンク(Aタグ)等ではデータが送信されないため自動チェックは行われません。

 また、JavascriptでFORMオブジェクトのsubmitメソッドを実行した時も自動エラー
 チェックは行われないのでご注意ください。
 この場合はonElseメソッドの先頭でcheckメソッドを呼び出すことにより自動チェックと
 同じチェックを行うことができます。
 詳細はJavascriptのsubmitでのイベント処理を参照して下さい。


ソースファイル
AutoCheckSample.html  サンプル画面のHTMLファイル

<html>
<head>
<title>pirka逆引きサンプル 自動チェックの指定方法</title>
</head>
<body>
<center>
<span style="color: #8080ff">pirka逆引きサンプル 自動チェックの指定方法</span><br>
<hr>
<br>
<form name="sampleForm" method="post">
<table border="1">
<tr>
<td colspan="3">
<span name="errorMessage" style="color: #ff0000"></span>
</td>
</tr>
<tr>
<td><label name="label_text01" for="id_text01">項目01</label></td>
<td><input type="text" name="text01" id="id_text01"></td>
<td>未入力チェック</td>
</tr>
<tr>
<td><label name="label_text02" for="id_text02">項目02</label></td>
<td><input type="text" name="text02" id="id_text02"></td>
<td>漢字のみ入力可能</td>
</tr>
<tr>
<td><label name="label_text03" for="id_text03">項目03</label></td>
<td><input type="text" name="text03" id="id_text03"></td>
<td>Mail</td>
</tr>
<tr>
<td><input type="submit" name="execButton" value="実行"></td>
<td></td>
<td></td>
</tr>
</table>
</form>
<hr>
<a name="returnWindow" href="">戻る</a>
</center>
</body>
</html>



AutoCheckSample.java  サンプル画面のJavaソースファイル

package jp.oarts.pirka.sample.instruction.is102200;

import jp.oarts.pirka.core.kernel.FieldMap;
import jp.oarts.pirka.core.util.check.PirkaChecker;
import jp.oarts.pirka.core.util.check.PirkaCheckerString;
import jp.oarts.pirka.core.util.check.PirkaCheckerStringChars;
import jp.oarts.pirka.core.win.PirkaWindow;

/**
* pirka逆引きサンプル 自動チェックの指定方法
*/
public class AutoCheckSample extends PirkaWindow {

/**
* コンストラクタ
*/
public AutoCheckSample() {

// 正式な項目名(日本語名)の設定
FieldMap field = getFieldMap();
field.setOfficialFieldName("text01", "項目01");
field.setOfficialFieldName("text02", "項目02");

// チェッカーのセット
addCheck("text01", PirkaChecker.required);
addCheck("text02", new PirkaCheckerString(PirkaCheckerStringChars.WIDE));
addErrorCheckReturner();
}

/**
* 実行ボタン処理
*
* @return 次ウインドウ
*/
public PirkaWindow execButton() {
return new AutoCheckOkSample();
}

/**
* 戻るリンク
*
* @return
*/
public PirkaWindow returnWindow() {
return null;
}

}

AutoCheckOkSample.html  OK画面のHTMLファイル

<html>
<head>
<title>pirka逆引きサンプル 自動チェックの指定方法 OK画面</title>
<meta http-equiv="Content-Type" content="text/html; charset=MS932">
</head>
<body>
<BR>
<center>
<span style="color: #8080ff">pirka逆引きサンプル 自動チェックの指定方法 OK画面</span><br>
<hr>
<font color="#c0c0c0">
エラーはありません
</font>
<form name="testForm" method="post">
<input type="submit" name="returnButton" value="戻る">
</form>
</center>
</body>
</html>

AutoCheckOkSample.java  OK画面のJavaソースファイル

package jp.oarts.pirka.sample.instruction.is102200;

import jp.oarts.pirka.core.win.PirkaWindow;

/**
* pirka逆引きサンプル 自動チェックの指定方法 OK画面
*/
public class AutoCheckOkSample extends PirkaWindow {

/**
* 戻るボタン処理
* @return 次ウインドウ
*/
public PirkaWindow returnButton() {
return null;
}

}

ページのTOPへ このページの先頭へ
oriental arts pirka