2016-10-01 13 views
0

私のテキストボックスは、特殊文字のみを一度だけ受け入れる必要があります。 例: '%'記号は複数回使用できません。 すべての特殊文字は、JSのテキストボックスで1回だけ許可する必要があります。 私はstackoverflowで非常に多くの答えを試みましたが、正確なコードを取得できませんでした。 「のようにので」ここでは代わりにアポストロフィ、ダッシュや期間、私が試した「%」が、その可能など、多くの割合(%)として、缶のJSを使ってテキストボックス内のすべての特殊文字を一度だけ許可する方法はありますか?

`/^(?=[a-zA-Z,]*['.-][a-zA-Z,]*$)[a-zA-Z,'.-]+$/` 

+0

これは正規表現でなければならない理由は何ですか?または、Nicksの回答を使用できますか? – Chewtoy

答えて

1

テキストエリアのキー押下をキャッチするイベントハンドラを作成します。テキストエリアの文字に対してevent.whichをチェックしてください。許可されていない場合はfalseを返すか、event.preventDefault()を呼び出すと文字は入力されません。

+0

Regexを使用して複数の同じ文字をテキストボックスに制限することはできますか? – raghurox27

+0

正規表現がどこにあるのかわかりません。その人が最初に文字を入力しないようにしようとしているのですか、そうした場合にエラーを表示するだけですか? –

+0

ちょうどそのユーザーがその文字を入力することを妨げています.... – raghurox27

関連する問題