0

クライアント側の正規表現の検証は、サーバーで行われる正規表現のチェックとどう違うのか教えてください。

asp.net 検証コントロールへの参照を歓迎します。

4

3 に答える 3

1

サーバー側とクライアント側の検証の主な違いは、バリデーターが処理をインターセプトする場所にあります。サーバー上で検証が行われる場所を理解するには、 ASP.NET ページ ライフ サイクルの概要を参照してください。クライアントで検証がどのように機能するかをよりよく理解するには、「ASP.NET サーバー コントロールのクライアント側検証」および「方法: ASP.NET サーバー コントロールのカスタム関数を使用して検証する」を参照してください。

RegularExpressionValidator の場合、クライアントで実行される Javascript とサーバーで実行される .NET コードの両方が含まれます。Javascript が無効になっている場合、クライアント側の検証はまったく実行されません。ブラウザーによっては、一部の機能がサポートされていない場合、ASP.NET はクライアント側の機能を適切に低下させようとします。サーバー側の検証は常に行われます。

于 2012-07-11T17:43:02.263 に答える
1

asp.net では、RegularExpressionValidatorコントロールは、クライアント側とサーバー側の両方の検証を実行できます。

それ以外の場合は、JavaScript RegExpオブジェクトを使用してクライアント側の検証を実行し、.NET 正規表現オブジェクト モデルがサーバー側で作業を行います。

一般に、クライアント スクリプトが無効になっている場合、クライアント側の検証は実行されません。この場合、サーバー側の検証が必要です。目立たない JavaScriptは、クライアントのスクリプト機能に応じて、機能を適切に低下させる必要があります。

于 2012-07-11T17:32:10.503 に答える
0

違いは主に、使用されている正規表現エンジンの違いに基づいています。Javascript には独自の正規表現エンジンがあり、.net の正規表現エンジンと比較して動作方法に違いがあります。

どちらも Perl 正規表現エンジンに基づいていますが、確かにいくつかの違いがあります。

詳細については、こちらを参照してください。

正規表現エンジン

于 2012-07-11T17:12:41.553 に答える