0

次のjqueryプラグインを使用しています

http://digitalbush.com/projects/masked-input-plugin/

私の現在のスクリプトは

<script type="text/javascript" charset="utf-8">
$(document).ready(function($) {  
$("#answer55937X1X3othertext").mask("aaaaaaaaaaaaaaaaaaaaaaaaa",{ placeholder:"#" });
});
</script>

問題:

しかし、実際には、ユーザーが任意の文字数のテキストのみを入力できるようにしたいと考えています。例: 単語、フレーズ、さらには文章。したがって、正規表現が適していると思いました。

質問1:

このプラグインに正規表現を実装する方法はありますか? そうでない場合は、代替案を提案してください。正規表現コードも含めてください。

質問 2: (好奇心から)

ウェブサイトを見ましたが、正規表現に関連するものは見つかりませんでした。デフォルトで正規表現はプラグインに含まれていますか? その機能が含まれているかどうかを確認する方法がわかりません。

前もって感謝します

アップデート:

以下のスクリプトを試しましたが、うまくいきません。

    $('question'+QQ' input.text').bind('keypress', function (event) {
var regex = new RegExp("^[a-zA-Z]+$");
var key = String.fromCharCode(!event.charCode ? event.which : event.charCode);
if (!regex.test(key)) {
   event.preventDefault();
   return false;
}
    });
4

3 に答える 3

1

私の知る限り、「マスクされた入力」を使用してそれを行うことはできません。必要な要件をサポートしていません。

「固定長」を持つ入力に完全に適合します。

an input with 8 length: 010-55555  (phone numbers)
an input with 8 or 11 length:  086-010-55555 (another phone numbers)

これはサポートされていません。

this is a sentence that doesn't have fixed words.

最初に入力をプレースホルダー「#」で埋める必要があるためです。

入力を検証したい場合は、Really simple validations や他の jquery 検証フレームワーク、または独自のものを使用して、独自のカスタマイズされた関数を作成するだけです。

<input id="your_field" />

<script>
$("#your_field").blur(function(){
  // your implementation here....
  $(this).val().match(...)  
})
</script>
于 2012-05-03T23:09:11.517 に答える
0

こんにちはスタックオーバーフラワー!jquery プラグインの設計に 20 分ほど費やしましたが、この入力マスキングを実装できるようになることを願っています。これは非常に迅速な作業であり、追加したいと考えていますが、ニーズを満たすかどうかをお知らせください。

https://github.com/bmoyles0117/jQuery-SimpleMask

以下のコードを使用して自由に実装してみてください。「a」はアルファベットを表し、「#」はスペースを含む英数字を表し、「9」はもちろん数字を表します。私が行ったことは、初期設定にフラグを追加して、ピリオド、コンマ、またはダッシュを許可するかどうかを指定することです。これがあなたのニーズを満たすことを本当に願っています!

<script src="jquery.simplemask.js"></script>
<script type="text/javascript">
    $(function() {
        $('#test123').simpleMask('aaaaa-####999', {
            allow_periods   : true,
            allow_commas    : true,
            allow_dashes    : true
        });
    });
</script>
<input type="text" id="test123" />
于 2012-05-03T23:55:20.330 に答える
0

ユーザーが好きなように入力できるようにする場合、マスクプラグインを使用する必要があるのはなぜですか?

その上、ページを見た後、プラグインが正規表現を受け入れるようには見えません (間違っていたら訂正してください)。たとえば、文字を使用して*任意の英数字を表します。正規表現では、*文字には特別な意味があります。

于 2012-05-03T23:10:38.890 に答える