我有一個表單,需要兩個字段相同(密碼和密碼確認)。我創建了一個class屬性來檢查它,並在服務器端工作。在客戶端,它什麼都不做。我需要將信息顯示在ValidationSummary中(「密碼重複」需要與「密碼」相同)。如何將新的驗證規則添加到mvcClientValidationMetadata?
我意識到檢查這些字段的最簡單方法是手動將規則添加到window.mvcClientValidationMetadata。我試圖這樣做,但沒有奏效。
我的代碼:生成這種形式之前執行
<% using (Html.BeginForm("ResetPassword", "Account", FormMethod.Post}))
{ %>
<%= Html.ValidationSummary() %>
<div>
<%= Html.ValidationMessageFor(m => m.Email)%>
<%= Html.LabelFor(m => m.Email)%>
</div>
<div>
<%= Html.TextBoxFor(m => m.Email)%>
<% Html.ValidateFor(m => m.Email);%>
</div>
<div>
<%= Html.ValidationMessageFor(m => m.PasswordModel.Password)%>
<%= Html.LabelFor(m => m.PasswordModel.Password)%>
</div>
<div>
<%= Html.PasswordFor(m => m.PasswordModel.Password)%>
</div>
<div>
<%= Html.ValidationMessageFor(m => m.PasswordModel.PasswordRepeated)%>
<%= Html.LabelFor(m => m.PasswordModel.PasswordRepeated)%>
</div>
<div>
<%= Html.PasswordFor(m => m.PasswordModel.PasswordRepeated)%>
</div>
<div>
<%= Html.ValidationMessageFor(m => m.PasswordModel.PasswordRepeated)%>
<%= Html.LabelFor(m => m.PasswordModel.PasswordRepeated, true)%>
</div>
<% } %>
Html.EnableClientValidation
方法。
下面你會發現我的問題的解決方案。