質問

この単純な選択リストを検証する必要があります:

<select name="<%= key %>">
    <option value="ETC" SELECTED>Select an option...</option>
    <option value="ONE">Lorem ipsum</option>
    <option value="TWO">dolor sit amet</option>
</select>

したがって、ユーザーは、「オプションを選択...」という繰り返しを許してフォームを送信することはありません。オプションが選択されました。原則として、JavaScriptの使用は許可されていますが、JSP内でJavaScriptを解決する方法を学ぶことは興味深いことです。

役に立ちましたか?

解決

クライアント側を制御できないため、「指定された値を送信しない」という条件を実際に満たすことはできません。ユーザーはいつでもHTMLを操作して、必要なものを送信できます。

JavaScriptを使用してクライアント側の検証を行い、ユーザーに迅速なフィードバックを提供し、99%以上のケースをキャッチしてから、送信されたパラメーターのサーバー側の検証を行って、 JSを有効にしていない、またはHTMLを操作して予期しない値を送信するユーザー。

クライアント側の検証はオプションであり、「よくある間違い」の入力検証には適していますが、クライアント側のチェックが行われたかどうかにかかわらず、すべての入力にはサーバー側の検証が必須であることを忘れないでください与えられた入力。

他のヒント

最近では、JSPでは以前に処理されたものだけを視覚化するため、通常は検証しません。したがって、「jspで」行う唯一の検証は、通常はJavaScriptです。残りの部分(実際の検証)については、Peteが答えた次の点について説明します。 JSPに再び表示されたら、検証が長く行われていることを期待しています。

「今日」と言ったように、JSPが輝かしい新しい概念であったとき、JSPの境界内でさらに多くのことが行われ、フォームがJSPに投稿されることさえありました。検証する方法 は、その時点ではさらに非標準でした。

JSPは&quot; view&quot;です。 MVCパターンであるため、データをユーザーに提示するためにのみ使用する必要があります。検証ロジックを含むすべてのアプリケーションロジックは、サーバー側で実行する必要があります。 このJSPが大規模アプリの一部である場合、Spring MVCを使用してアプリをセットアップし、バリデーターを作成して入力を検証することをお勧めします。 しかし、ここでいくつかの大きなアプリケーションについて話していない場合でも、検証はサーバー側で行う必要があります。他の人が既に述べたように。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top