0

私はテキストフィールドをマスクしようとしていて、http://digitalbush.com/projects/masked-input-pluginを調べました

LastnameにA-Za-Zとスペースを含めることができるように、カスタムマスク定義を作成しました。

マスクにダッシュを追加するにはどうすればよいですか?次の例のようにエスケープしてみました。

$.mask.definitions['~'] = '[A-Z,a-z,\-, ]';

しかし、それは機能していないようです。

4

1 に答える 1

4

definitionsオブジェクトは、本質的に、キー付き正規表現文字クラスのセットです。キーは特殊なマスク編集文字です。デフォルトでは、マスクされた編集プラグインのソースコードを見ると、3つ(「9」、「a」、および「*」)が定義されていることがわかります。

definitions: {
  '9': "[0-9]",
  'a': "[A-Za-z]",
  '*': "[A-Za-z0-9]"
}

したがって、必要なのは、正しい正規表現文字クラスを宣言することだけです。'-'は文字クラスのメタ文字であるため(azのように、クラス内の範囲を定義します)、最初に配置する必要があります。だから答えは

$.mask.definitions['~'] = '[-A-Za-z ]';

これにより、マスク内の「〜」文字を英字、スペース、またはハイフンに置き換えることができます。

于 2011-01-25T00:29:20.990 に答える