Я подозреваю, что вы загружаете эти частичные представления, используя AJAX.Если это так, вам нужно будет вручную вызвать метод $.validator.unobtrusive.parse
, как только вы добавите новое содержимое частичного в DOM, как описано в этой статье .
Брэд Уилсон также обсуждалэто в его сообщении в блоге :
Ненавязчивый клиентский скрипт проверки автоматически анализирует начальный набор HTML для правил проверки, когда страница закончила загрузку.Если ваша страница динамически добавляет новый HTML-контент (возможно, через Ajax или через код приложения на стороне клиента), вы можете захотеть проанализировать этот новый HTML-код для проверки клиента на новые элементы HTML.
Для анализа нового HTML выможет вызвать метод jQuery.validator.unobtrusive.parse (), передав ему селектор для HTML, который вы хотите проанализировать.Вы также можете вызвать функцию jQuery.validator.unobtrusive.parseElement () для разбора одного HTML-элемента.
Поскольку ошибка $ не определена , убедитесь, чточто вы включили правильные сценарии:
<script src="@Url.Content("~/Scripts/jquery-1.5.1.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>
Также убедитесь, что вы не ссылаетесь ни на один из сценариев Microsoft * .js.Они устарели и больше не должны использоваться в ASP.NET MVC 3.
Конечно, это только предположение, вы не показали никакого кода, поэтому мы не можем знать, что вы делаете.