わかりました、日付入力であるフォームに入力があります。「XX/XX/XXXX」のようなパターンに基づいた文字を受け入れてほしい。現在、数字と「/」のみを受け入れます。しかし、ユーザーに「X/XXXX/XX」やその他の種類の日付を入力してほしくないし、「//XX/XXX/XXX」のように間違って書き込めないようにしたい. これでjsを使用する方法、またはjQueryを使用する方法がわからないため、ユーザーはパターンに基づいて日付を入力し、他の方法では入力しません。
質問する
2237 次
3 に答える
3
安価で簡単な方法は、jQuery UI の datepickerコントロールを実装して、それを介して入力形式を制御できるようにすることです。
基本的には問題を回避していますが、実際の問題を方程式から外す可能性があります。
于 2012-06-06T11:57:00.597 に答える
1
于 2012-06-06T11:56:24.567 に答える
1
正規表現を使用します^(3[0-1]|[0-2]?[0-9])\/(0?[0-9]|1[0-2])\/(2[0-9]+)$
:
var date = "20/12/2012";
console.log(isDateOK(date));
function isDateOK(date) {
return date.match(/^(3[0-1]|[0-2]?[0-9])\/(0?[0-9]|1[0-2])\/([1-2][0-9]{3})$/);
}
一致しない場合は false を返します。この例では、DD/MM/YYYY を使用しています。MM/DD/YYYY が必要な場合は、代わりに次の正規表現を使用します。^(0?[0-9]|1[0-2])\/(3[0-1]|[0-2]?[0-9])\/[1-2][0-9]{3$
JSFiddle: http://jsfiddle.net/UBFeN/2/
于 2012-06-06T12:00:35.037 に答える