0

CustomValidatorのクライアント側検証関数を作成しており、入力された文字列の長さを確認する必要があります。しかしその前に、詐欺師に少し対抗するために、文字列から先頭と末尾のスペースをすべて削除したいと思います。このシナリオでそれを行う最も簡単な方法は何ですか?

ありがとうございました!

4

3 に答える 3

4

最も簡単な方法は、ページで ValidatorTrim(value) JavaScript 関数を呼び出すことです。この関数は、ページに追加されたときにすべての asp.net バリデーターに含まれる JavaScript から取得されます。

しかし、私はそれが文書化された機能だとは思わないので、バリデーターの将来のバージョンで利用可能になることに頼ることはできません. したがって、J Cooper が指摘するように、jQuery を使用するか、独自の関数を追加します。

于 2008-12-05T07:47:04.600 に答える
2

trim鈍感で申し訳ありませんが、Javascript で関数を探しているだけですか? その場合、jQuery は次のように使用します。

function trim( text ) {
    return (text || "").replace( /^\s+|\s+$/g, "" );
}
于 2008-12-05T07:32:31.603 に答える
0

私が尋ねた質問は簡単にググることができると言わざるを得ず、私はすでにそれを調査しました。しかし、ASP.NET ページのクライアント検証関数を作成する場合に最も簡単なソリューションを StackOverflow コミュニティに提供したいと考えています。

RequiredFieldValidator が、チェック対象の文字列のスペースを削除することも知られています。アプリケーションに関連付けられている ScriptResource.axd ファイルのソースを調べると、これを見つけることができます。

function RequiredFieldValidatorEvaluateIsValid(val) {
    return (ValidatorTrim(ValidatorGetValue(val.controltovalidate)) != 
        ValidatorTrim(val.initialvalue))
}

そしてもっと面白いこれ

function ValidatorTrim(s) {
    var m = s.match(/^\s*(\S+(\s+\S+)*)\s*$/);
    return (m == null) ? "" : m[1];
}

コードの断片。

したがって、トリム関数を最初から書き直す必要はありません。すでに持っているので使用できます。

于 2008-12-05T07:47:57.937 に答える