1

のように数値のみを受け入れる入力コンポーネントが必要です[0-9]。サーバー側の変換/検証によってこれを達成しました:

<h:inputText ... converter="javax.faces.Integer" />

ただし、UI への入力中は他のキャラクターを引き続き使用できます。keypressイベント中にそれを防ぐにはどうすればよいですか?

<h:inputText ... converter="javax.faces.Integer" onkeypress="...help?" />
4

2 に答える 2

0

これを試して

<h:inputText id="presentReading" styleClass="labelfont" label="Present Reading"    converter="javax.faces.Integer"value="#{FuelFilling1.presentReading}" maxlength="10">
   <f:validateLongRange minimum="1" maximum="10"/>
</h:inputText>

または、JQuery または Javascript を使用して、キーを押したときにクライアント側で検証することもできます。Jqueryを使っても大丈夫ですか?

于 2013-04-05T11:01:29.007 に答える
0

jsf 検証に固執することをお勧めします。

<f:convertNumber integerOnly="true" type="number" />

get 応答にフォームを送信する必要がない場合は、リアルタイムで検証するために ajax を使用できます。javascript/jQuery を使用してキープレスの検証を行うことはできますが、そのようにする本当に正当な理由がない限り、面倒です。

于 2013-04-05T15:08:05.733 に答える