「郵便番号」テキスト ボックスがあり、データベースに正しく挿入するには、真ん中に空白が必要です。つまり、「N18 2JY」です。
ユーザーが郵便番号を正しく入力したかどうかを検証/確認し、欠落している場合はエラー メッセージを表示する方法はありますか?
前もって感謝します :)
「郵便番号」テキスト ボックスがあり、データベースに正しく挿入するには、真ん中に空白が必要です。つまり、「N18 2JY」です。
ユーザーが郵便番号を正しく入力したかどうかを検証/確認し、欠落している場合はエラー メッセージを表示する方法はありますか?
前もって感謝します :)
正規表現バリデータ コントロールを使用して、正規表現 go hereを生成してみてください。
@Martin Liversageの回答は、検証を制御するMVCパターンのより良い回答です。
正規表現が非常に一般的であると思われる場合は、以下のサンプルのように、RegularExpressionAttribute をオーバーライドできます。
public class AlphaSpaceAttribute : RegularExpressionAttribute, IClientValidatable
{
public AlphaSpaceAttribute()
: base(@"^([a-zA-Z ]*)\s*")
{
}
public override string FormatErrorMessage(string name)
{
return Resources.UDynamics.EM_10003;
}
public IEnumerable<ModelClientValidationRule> GetClientValidationRules(ModelMetadata metadata, ControllerContext context)
{
var rule = new ModelClientValidationRule
{
ErrorMessage = FormatErrorMessage(this.ErrorMessage),
ValidationType = "regex",
};
rule.ValidationParameters.Add("pattern", @"^([a-zA-Z ]*)\s*");
yield return rule;
}
}
上記のコードでは、RegularExpressionAttribute をオーバーライドして、AZ とスペーシングのみを許可しています。1 つのプロパティで 1 つの RegularExpressionAttribute のみが許可されることに注意してください。