2012-03-01 13 views
2

フォーラムの複数のフィールドで正規表現バリデーターを使用しています。彼らはすべて同じことをチェックしており、スペースを節約するために、検証メッセージがページの同じスペースに表示されるようにしたいと思います。 (彼らは有効な電子メールアドレスを確認しています)。私が進めている問題は、彼らが自分のスペースに、ページ上で順番に並んでいることです。同じ不動産を占有したいと思います。ASPバリデータコントロール - 同じ場所にコントロールを配置できますか?

ポストバックに頼ることなく、ページの読み込みを動的に隠すか、コントロールを表示せずにこれを行うことはできますか?または、同じ正規表現バリデータコントロールに複数のコントロールを追加できますか?

+0

「同じスペース」を占有している場合、2(またはn)を有効にするとどうなりますか?彼らは「互いの隣に」現れますか?複数のトリガーが発生した場合、「同じスペース」が実際に何を意味するのか考えてみてください。 – pearcewg

+0

Hey @pearcewg、基本的に複数の電子メールアドレスフィールドがあり、すべて有効な電子メールである必要がありますが、同じメッセージがすべてのフィールドに適用されます。 – aceinthehole

+0

私たちの提案は役に立ちましたか? –

答えて

3

ValidationSummaryコントロールをご覧ください。すべての検証エラーを同じ場所に集約し、好きな場所に置くことができます。 ValidationSummaryを、ValidationGroupプロパティを使用して個々の検証コントロールにリンクします。

無効なフィールドの横にメッセージ全体(またはアスタリスクのみ)を表示することはできます。

4

バリデータが表示されているかどうかにかかわらず、バリデータが画面の不自然さをどのように受け止めているかについては、バリデータの「表示」プロパティを「ダイナミック」に設定できます。

無効なエントリがあり、バリデータが表示される必要がある場合にのみ、この方法でスペースを取ることができます。この方法では、それらを互いに隣り合って設定することができます。妥当性検査の失敗のためにメッセージを表示するものだけが、その場所のスペースを占有します。 (複数ある場合は、検証に失敗して表示されているものがすべてフローレイアウトに表示されます)、検証テキストに<br /> 'タグを含めると、それはちょっとしたハックです)。

デフォルトは「静的」で、メッセージが表示されていなくても不動産を占有します。

(私はそれはおそらく、泥のようにはっきりしていた知っているので、スクリーンショット付き記事hereがあります - フィギュア7.6と7.7を見て)


場合は、しかし、あなたが欲しいの上部にあるすべてのメッセージページ、または1つの場所ではなく、問題のコントロールの隣にある@Sir Crispalotの答えが最良のソリューションIMOです。

2

ダイナミックとして表示を追加すると、私にとっては効果がありました。

関連する問題