0

テキストボックスに入力された最初の文字を大文字にするjqueryコードがあり、同じテキストボックスに数字を入力できないようにする別のコードがあります。

問題は、一方を使用すると、もう一方が機能しないことです。両方を 1 つに組み合わせる方法を誰かに教えてもらいたいと思っていまし.replace()

た。次のコードを使用して、最初の文字入力を大文字にします。

$(this).val(txt.replace(/^(.)|\s(.)/g, function($1){ return $1.toUpperCase( ); }));

そして、このコードを使用して、テキスト ボックスで数字を禁止します。

$(this).val($(this).val().replace(/[^a-z]/g,''));



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

4

2 に答える 2

1

それぞれが文字列を受け取り、文字列を返す 2 つの関数にコードを移動してみてください。これで、2 つを任意の順序で組み合わせることができます。

$(this).val(disallowNumbers(capitalize($(this).val())));

[終了]ここでフィドルを修正しました: http://jsfiddle.net/DnMN3/1/

元のコードには問題がありました。「数字を許可しない」チェックで小文字のみを許可すると、大文字が飲み込まれてしまいました。そのため、これに置き換えられたコードaA許可されなくなりました。

于 2013-09-02T14:05:18.463 に答える