1

私はフォームシステムを構築しており、検証に取り組み始めました。私のフレームワークはCIなので、検証の主要部分については知って'trim|required|htmlspecialchars'いますが、知りたかったことは次のとおりです。

A) url と phone* の入力に使用するのに最適なもの

B) クライアント側の検証に何を使用することをお勧めしますか?

*私はニュージーランド出身なので、電話番号は 00 123 4567 または 1234567 です

4

1 に答える 1

2

CIの検証は、特に人生をシンプルにする素晴らしいjqueryプラグインを利用したい場合は、対処するのが非常に面倒です。

クライアント側では、JörnZaeffererによって作成されたjqueryプラグインを使用します。コツをつかむのは非常に簡単で、非常にカスタマイズ可能です。

URLなどの標準的なものには多くの組み込みメソッドがあります。ニュージーランドの電話番号については、プラグインに付属するadditional-methods.jsファイルに追加できるカスタムルールをいくつか作成しました。

/**
 * matches NZ phone number formats
 * 
 * +64 7 123 1234
 * or
 * 07-123-1234
 * or
 * 071231234
 * 
 * spaces/hyphens optional
 *
 */
jQuery.validator.addMethod('phoneNZ', function(phone_number, element) {
return this.optional(element) || phone_number.length > 9 &&
phone_number.match(/^(0|(\+64(\s|-)?)){1}\d{1}(\s|-)?\d{3}(\s|-)?\d{4}$/, 'Please specify a valid phone number');


/**
 * matches NZ mobile number formats
 *  
 * 021 123 1234
 * or
 * 027 123 1234
 * or
 * 022-123-1234
 * or
 * +64 21 123 1234
 *
 * spaces/hyphens optional
 * 
 */
jQuery.validator.addMethod('mobileNZ', function(phone_number, element) {
return this.optional(element) || phone_number.length > 9 &&
phone_number.match(/^(0|(\+64(\s|-)?)){1}(21|22|27){1}(\s|-)?\d{3}(\s|-)?\d{4}$/);
}, 'Please specify a valid mobile number');

ちなみに、これらの番号は慎重に使用してください。これらの番号を計算でダイヤルする場合を除いて、長さに制限のあるフリーテキストのままにしておくと、電話番号の入力方法にさまざまなバリエーションがあります。彼らに合わないルールを強制することによって人々を怒らせる/彼らの数/文字の追加/+記号/拡張など

于 2012-04-12T04:04:08.880 に答える