Получение ошибки при проверке g ASP.NET MVC 3.0 AjaxForm с jQuery - PullRequest
1 голос
/ 30 мая 2011

Попытка использовать это решение для проверки AjaxForm ASP.Net MVC Ajax форма с проверкой JQuery , но я получаю ошибку: Uncaught exception: TypeError: Cannot convert '$('MyFrom').validate()' to object

Мой от:

@using (Ajax.BeginForm("MyFromAction", "Something", null, new AjaxOptions() { OnBegin = "onBeginMyFrom", OnFailure = "onFailureMyFrom", OnSuccess = "onSuccessMyFrom" }, new { @id = "MyFrom" }))
{
}

Моя форма работала правильно и отправляла сообщения на сервер, но после того, как я использую проверку jQuery, я получаю сообщение об ошибке выше.

Есть идеи?

UPDATE: Я не упомянул, что я использую MVCContrib FluentHtml.

MVCContrib требовал этого http://weblogs.asp.net/srkirkland/archive/2011/03/08/adding-unobtrusive-validation-to-mvccontrib-fluent-html.aspx, чтобы получить ненавязчивую проверку.

MvcContrib будет поддерживать ненавязчивую проверку в следующем выпуске по умолчанию?

1 Ответ

1 голос
/ 30 мая 2011

Ответ, который вы просматриваете, был связан с предыдущей версией ASP.NET MVC.В ASP.NET MVC 3 проверка клиента выполняется с помощью плагина jquery validate, и это делается в ненавязчивом порядке.Вам не нужен код для этого.Поэтому прежде всего убедитесь, что вы включили правильные сценарии:

<script src="@Url.Content("~/Scripts/jquery.validate.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.unobtrusive-ajax.js")" type="text/javascript"></script>

, тогда этот ненавязчивый JavaScript и проверка включены в web.config:

<add key="ClientValidationEnabled" value="true"/>
<add key="UnobtrusiveJavaScriptEnabled" value="true"/>

Теперь вы можетечтобы ваша AJAX-форма работала правильно:

@using (Ajax.BeginForm("MyFromAction", "Competition", null, new AjaxOptions() { OnBegin = "onBeginMyFrom", OnFailure = "onFailureMyFrom", OnSuccess = "onSuccessMyFrom" }, new { @id = "MyFrom" }))
{
    ...
}

Форма будет проверять ошибки валидации на стороне клиента и не будет отправлена ​​до тех пор, пока они не будут исправлены.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...