- PR -

JSPでの入力項目に対し、入力制限をかける方法!?

投稿者投稿内容
geekfreed
会議室デビュー日: 2003/11/17
投稿数: 17
投稿日時: 2004-04-19 10:56
いつも、お世話になります。

現在、JSPを作成していてどうにかできないことか、
悩んでいることがあります。

JSPの入力項目に対し、入力制限をかけれないでしょうか?
例えば、入力項目に「数量」という項目を作成し、半角の数字のみ
入力可能とかを行いたいのです。
もし、不可能であるなら、JSPよりgetParameterで取ってきた
入力項目に対し、この値には、文字列が入力されているとか調べる方法
はありますか?

知っている方がいらっしゃれば、宜しく御願いします。
でゅうく
大ベテラン
会議室デビュー日: 2003/11/30
投稿数: 129
投稿日時: 2004-04-19 11:24
クライアントサイドスクリプトではだめなんですか?
K
大ベテラン
会議室デビュー日: 2004/04/07
投稿数: 174
投稿日時: 2004-04-19 11:35
commonsのvalidatorを使うのが早いと思います。
http://jakarta.terra-intl.com/commons/validator/
geekfreed
会議室デビュー日: 2003/11/17
投稿数: 17
投稿日時: 2004-04-19 11:36
でゅうく様、返答有難う御座います。

サーバーサイド・スクリプトで行いたいのですが。。。
無理でしょうか?
かつのり
ぬし
会議室デビュー日: 2004/03/18
投稿数: 2015
お住まい・勤務地: 札幌
投稿日時: 2004-04-19 13:07
HttpServletRequestのgetParameterで
調べられると思うのですが。
getParameterの戻り値がnullであるかとか・・・
色々調べ方はあると思いますよ。
if文の書き方がわからないのですか?
geekfreed
会議室デビュー日: 2003/11/17
投稿数: 17
投稿日時: 2004-04-19 13:35
JSPの合計(テキスト名:sum)という数字入力用項目があり
この項目に、aを入れたとします。
(本来、int型ですがあえて文字列を入れたとします。)

このとき、サーブレット側で下記のような構文を実行したとき
NumberFormatExceptionが発生することを避けたいことが目的です。
文字列が含まれているときは、0にするようなことはできませんか?
あるいは、int型に変換可能かどうか判定するメソッドとかあるかどうか
聞きたかったのですが。。。

int sum = Integer.parseInt( req.getParameter("sum") );
ニシトミ
ベテラン
会議室デビュー日: 2003/04/24
投稿数: 76
お住まい・勤務地: 千葉・東京
投稿日時: 2004-04-19 13:45
NumberFormatExceptionをキャッチしてあげればいいのでは??
ないでしょうか
カルキヌキ
会議室デビュー日: 2003/09/22
投稿数: 16
投稿日時: 2004-04-19 13:58
1.java.lang.Character#isDigit(char)を使う。
2.java.lang.Integer#parseInt(String)を使う。
3.char[]に使用可能文字を突っ込んで一文字ずつマッチング。
のどれかを使えばいけるんじゃないでしょうか。

3つとも挙動が違いますが。

スキルアップ/キャリアアップ(JOB@IT)