2012-03-23 97 views
2

我有以下,這是行不通的,我的驗證似乎沒有觸發表單提交。ASP.NET MVC 3不顯眼的驗證失敗

<script src="/Public/javascript/jquery-ui-1.8.13.min.js" type="text/javascript"></script> 
<script src="/Public/javascript/jquery.unobtrusive-ajax.js" type="text/javascript"></script> 
<script src="/Public/javascript/jquery.validate.min.js" type="text/javascript"></script> 

...... 

<form action="/Controller/Action" data-ajax="true" data-ajax-complete="bla();" data-ajax-method="POST" id="MyAjaxForm" method="post">  

......... 

<input data-val="true" data-val-required="The x field is required." id="ViewModel_x" name="ViewModel.x" type="text" value=""> 
<span class="field-validation-valid" data-valmsg-for="ViewModel.x" data-valmsg-replace="true"></span> 

......... 

<a href="#" id="saveButton" onclick="$('#MyAjaxForm').submit();">Some button text</a> 

</form> 

您是否在生成的標記中看到錯誤?

在此先感謝。

回答

3

您是否在生成的標記中看到錯誤?

是的,你似乎已經忘了包括jquery.validate.unobtrusive.js腳本這是什麼解釋HTML5 data-*屬性驗證您的輸入領域和發出jquery.validate規則:

<script src="/Public/javascript/jquery-ui-1.8.13.min.js" type="text/javascript"></script> 
<script src="/Public/javascript/jquery.unobtrusive-ajax.js" type="text/javascript"></script> 
<script src="/Public/javascript/jquery.validate.min.js" type="text/javascript"></script> 
<script src="/Public/javascript/jquery.validate.unobtrusive.js" type="text/javascript"></script> 
+0

真的,我錯過了腳本。感謝您發現它。仍然無法正常工作,雖然... – Dante 2012-03-23 15:56:44

+0

我認爲你需要提供一個簡潔而又完整的例子,讓我重現你的問題。 – 2012-03-23 17:48:50

+0

問題是有部分視圖通過ajax.actionlink動態加載,驗證無效。它通過調用一些validationparse方法來工作。 – Dante 2012-03-27 14:50:32