В моем приложении ASP.NET MVC 4 я пытаюсь использовать ненавязчивую проверку клиента с помощью Fluent Validation.
<script src="/Scripts/jquery.validate.min.js" type="text/javascript">
</script>
<script src="/Scripts/jquery.validate.unobtrusive.min.js" type="text/javascript">
</script>
У меня есть эти два файла.js, которые VS2010 предоставляет при создании нового приложения ASP.NET MVC 4. Я также включил проверку на стороне клиента в моем файле web.config.
<appSettings>
<add key="ClientValidationEnabled" value="true" />
<add key="UnobtrusiveJavaScriptEnabled" value="true" />
</appSettings>
Насколько я знаю, когда проверка клиента и ненавязчивый JavaScript включены, поля ввода с правилом проверки клиента -содержат атрибут data -val="true" для запуска ненавязчивой проверки клиента. И у меня есть эти поля в моих полях ввода.
Например,
<input class="input-validation-error" data-val="true" data-val-
required="error text here" id="purchasePrice"
name="PurchasePrice" type="text" value="">
<span class="field-validation-error error" data-valmsg-for="PurchasePrice"
data-valmsg-replace="true">'Purchase Price' must not be empty.</span>
Однако, когда я отправляю свою форму, она отправляется на контроллер, и моя модель проверяется на моем коде контроллера, а не на стороне клиента.
РЕДАКТИРОВАТЬ:
Это мой тег открытия формы.
@using (Html.BeginForm("Create", "Product", FormMethod.Post,
new { enctype = "multipart/form-data", @class = "mainForm",
@id = "productCreateForm" }))
Любые идеи? Спасибо.