基本的に、JSF コンバーターは Java™ NumberFormat および DateFormat クラスの JavaScript 実装 (および MaskFormat の実装) です。 これらのクラスのいずれかを使用してフォーマットされたストリングを JavaScript の型付きの値に変換し、その逆の変換も行います。
JSF コンバーターは、他の JWL コンポーネントで フィールドの妥当性検査、入力支援、およびクライアント・サイド・データの管理を行う際に使用されます。また、開発者が独自の クライアント・サイド妥当性検査を作成する場合にも有用です (例えば、2 つの「数値」フィールドの値を比較する場合に、 これらを使用して、値を JavaScript 数値に変換することができます)。
<script> hX_5.addConverter("2", new hX_5.DateTimeConverter("strict:1", "icu4j", "epoch:i", "format:yyyy/MM/dd G")); </script>
<script> var c = hX_5.getConverterById("2"); var v = document.getElementById("TestField"); if (c!=null && v!= null) { var dt = c.stringToValue(v.value); if (dt!=null) { alert ("JavaScript object: " + dt); } else { alert ("Failed: " + c.lastError()); } } </script>
<h:inputText styleClass="inputText" id="text1" size="6" value="#{myBean.myBigDecimal01}"> <f:convertNumber pattern="##0.0"/> <hx:inputHelperSpinner delta="0.1"/> <hx:inputHelperAssist validation="true" errorClass="inputText_Error"/> <f:validateDoubleRange minimum="-100.0" maximum="100.0"></f:validateDoubleRange> </h:inputText>
<script> var cID = hX_5.getBehaviorById("form1:text1", "validate", "onblur").getAttribute("converter"); var cvt = hX_5.getConverterById(cID); </script>
それぞれのコンバーターは、 JavaScript コンストラクターを 使用して構成され、addConverter 呼び出しを介してページに追加されます。
id |
このコンバーターに割り当てられる ID。 この ID は、ページ (またはポータル) 内で作成される、 すべてのコンバーター間で固有でなければなりません。 任意の文字列値を、ID として使用できます。 |
name |
JSF コンポーネントの名前。 |
属性 |
コンマで区切られた属性のリスト。 各属性は、属性名と値から成る引用符付きストリングになっており、 コロンで区切られています (例: "label:MyLabel")。 |
コンバーター・オブジェクトを取得するには、次のようにします。
id |
このコンバーターに割り当てられる ID。 この ID は、ページ (またはポータル) 内で作成される、 すべてのコンバーター間で固有でなければなりません。 任意の文字列値を、ID として使用できます。 |
ストリングを JavaScript オブジェクトに変換するには、次のようにします。
cvt |
コンバーター・オブジェクト |
string |
変換されるストリング |
returns |
コンバーターの JavaScript オブジェクトの型 (数値、日付/時刻、またはストリング)。 変換できない場合は、null が戻され、lastError が設定されます。 |
JavaScript オブジェクトをストリングに変換するには、次のようにします。
cvt |
コンバーター・オブジェクト |
value |
コンバーターの JavaScript オブジェクトの型 (数値、日付/時刻、またはストリング) |
returns |
コンバーターの JavaScript オブジェクトの型 (数値、日付/時刻、またはストリング)。 変換できない場合は、null が戻され、lastError が設定されます。 |
最後の変換が失敗した 理由についての情報を取得するには、次のようにします。
cvt |
コンバーター・オブジェクト |
returns |
コンバーターの JavaScript オブジェクトの型 (数値、日付/時刻、またはストリング)。 変換できない場合は、null が戻され、lastError が設定されます。 |
コンバーターの属性を変更するには、次のようにします。
cvt |
コンバーター・オブジェクト |
arg |
JSF 属性/値のストリング。 |
コンバーターの属性を取得するには、次のようにします。
cvt |
コンバーター・オブジェクト |
argname |
属性名を含むストリング。 |
returns |
コンバーターの JavaScript オブジェクトの型 (数値、日付/時刻、またはストリング)。 変換できない場合は、null が戻され、lastError が設定されます。 |
コンバーター |
説明 |
---|---|
NumberConverter | Java 形式の数値が含まれるストリングと JavaScript 数値オブジェクト間の変換を行います。 |
DateTimeConverter | Java 形式の日付/時刻が含まれるストリングと JavaScript 日付オブジェクト間の変換を行います。 |
MaskConverter | Java 形式のマスクされたストリングが含まれるストリングと JavaScript ストリング・オブジェクト間の変換を行います。 |