嘗試使用MVC客戶端驗證時,我得到「formElement爲null」。 有沒有人有任何想法可能是什麼問題?formElement爲null,Mvc客戶端驗證
Sys.Mvc.NumberValidator.create =函數(規則){返回Function.createDelegate(新Sys.Mvc.NumberValidator(),新Sys.Mvc.NumberValidator()驗證。);}
這裏是我的模型:
public class EmailViewModel
{
///
/// The user's current email address
///
public string CurrentEmailAddress { get; set; }
///
/// User's new email address
///
[EmailAddress(IsRequired = true, ErrorMessage = "Please enter a valid email address.")]
public string NewEmailAddress { get; set; }
///
/// User's confirmed new email address
///
[EmailAddress(IsRequired = true, ErrorMessage = "Please enter a valid email address. Your emails do not match.")]
public string ConfirmNewEmailAddress { get; set; }
public EmailViewModel()
{
CurrentEmailAddress = "[email protected]";
NewEmailAddress = string.Empty;
ConfirmNewEmailAddress = string.Empty;
}
}
這裏是從主網頁的腳本引用:
MicrosoftAjax.js
MicrosoftMvcAjax.js
MicrosoftMvcValidation.js
我不知道,如果這一切都將出現,但這裏是視圖代碼:
<script src="../../Scripts/MicrosoftAjax.js" type="text/javascript"></script>
<script src="../../Scripts/MicrosoftMvcAjax.js" type="text/javascript"></script>
<script src="../../Scripts/MicrosoftMvcValidation.js" type="text/javascript"></script>
<%= Html.ValidationSummary(true, "There was an error when processing your request") %>
<% Html.EnableClientValidation(); %>
<% Html.BeginForm(); %>
<div class="SecureForm_Wrapper">
<label class="Styled">
<img alt="Reqired" src="../../Content/Images/Misc/required.png" />
New E-Mail</label>
<div class="TheField">
<%= Html.TextBoxFor(m => m.NewEmailAddress, new { id = "NewEmailAddress", name = "NewEmailAddress", @class = "CommonTextBox" }) %>
<%= Html.ValidationMessageFor(m => m.NewEmailAddress) %>
</div>
</div>
<div class="SecureForm_Wrapper">
<label class="Styled">
<img alt="Reqired" src="../../Content/Images/Misc/required.png" />
Confirm New E-Mail</label>
<div class="TheField">
<%= Html.TextBoxFor(m => m.ConfirmNewEmailAddress, new { id = "ConfirmNewEmailAddress", name = "ConfirmNewEmailAddress", @class = "CommonTextBox" })%>
<%= Html.ValidationMessageFor(m => m.ConfirmNewEmailAddress) %>
</div>
</div>
<div id="BottomButtonContainer">
<a class="button" href="#" id="SubmitButton" style="font-weight: bold;"><span>Save</span></a>
<a class="button" href="#" onclick="this.blur(); return false;"><span>Cancel</span>
</a>
</div>
<% Html.EndForm(); %>
,這裏是
沒有人有任何想法,以什麼可能是這個問題?
格雷格,我刪除了EmailAddress的驗證屬性,但仍然收到同樣的異常。另外,我對我的問題做了一些重新格式化。我使用的是從Beta2升級的MVC2 RC。我想知道我是否有錯誤的腳本文件...? – devlife 2010-03-04 12:25:47
您的觀點沒有提交一個(除非那裏提供的JavaScript不包括在內)。當我向視圖添加一個提交按鈕時,它仍然適用於我。包含的文件看起來是正確的,只要它們是與RC2一起發佈的文件,而不是beta版本,因爲它們改變了它們對客戶端驗證的一些方式。 如果您不知所措,請嘗試創建一個新的MVC2 RC2應用程序,並將相同的視圖/模型放入其中,並查看它是否適用於您。 – 2010-03-04 12:43:17
事實證明,我的主頁上有一個表單,另一個表單是內容視圖。非常感謝您的幫助Greg。 – devlife 2010-03-04 23:46:36