モデルクラスに次のプロパティがありました。
[MaxLength(9), Required, DisplayName("Social security number")]
[RegularExpression(@"\d{3}-\d\d-\d{4}", ErrorMessage = "Invalid social security number")]
public string SocialSecurityNumber { get; set; }
マークアップ (カミソリ):
@Html.TextBoxFor(model => model.SocialSecurityNumber, new { id = "ssn" })
@Html.ValidationMessageFor(model => model.SocialSecurityNumber)
生成された HTML コードは次のとおりです。
<input data-val="true" data-val-regex="Invalid social security number" data-val-regex-pattern="\d{3}-\d\d-\d{4}" data-val-required="The Social security number field is required." id="ssn" name="SocialSecurityNumber" type="text" value="">
<span class="field-validation-valid" data-valmsg-for="SocialSecurityNumber" data-valmsg-replace="true"></span>
ただし、公開された共有ホスト サイトで数字を 1 つだけ入力して別の入力ボックスをクリックしても、エラー メッセージは表示されません。Invalid social security number
Visual Studio 2012 (Chrome ブラウザー) を使用してデバッグすると、エラー メッセージが表示されます。問題の原因は何ですか?
更新: 私のローカル PC で生成された html コード (Visual Studio のデバッグ) は.
<input data-val="true" data-val-regex="Invalid social security number" data-val-regex-pattern="\d{3}-\d\d-\d{4}" data-val-required="The Social security number field is required." id="ssn" name="SocialSecurityNumber" type="text" value="" class="input-validation-error">
<span class="field-validation-error" data-valmsg-for="SocialSecurityNumber" data-valmsg-replace="true"><span for="ssn" class="" style="">Invalid social security number</span></span>
ローカル PC の html コードに が含まれているようですがclass="input-validation-error"
、これはホスト サイトには存在しませんか?