模特课:
public class MyClass
{
......
[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)
在Visual Studio 2012 / Chrome中运行时生成的代码。
<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>
发布到共享主机后生成的代码
<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>
为什么通过VS运行的网站有更多生成的HTML代码? (class="input-validation-error">
等
)
答案 0 :(得分:0)
你有两种情况 -
第一个示例显示带有无效输入的文本框,因此css类input-validation-error
和SPAN
内的消息。
第二个示例显示有效(或否)输入,因此文本框中缺少CSS类而SPAN
中没有消息。
在每个网站的表单中放置一个无效的SSN并提交它,看看你是否得到相同的结果。