Добавление проверки с помощью MVC 3 & jQuery Validator во время выполнения - PullRequest
13 голосов
/ 24 февраля 2011

У меня есть форма с проверкой, предоставленной c # при загрузке страницы, отображаемые поля выглядят так:

<input autocomplete="off" class="input-validation-error" data-val="true" data-val-number="The field Idade must be a number." data-val-range="message here" data-val-range-max="25" data-val-range-min="16" data-val-required="The Idade field is required." id="Content_MyFieldId" maxlength="3" name="Content.MyFieldId" value="0" type="text">

, и я пытаюсь поместить новый объект html, равный примеру с jQuery, ноэто новое поле не проверяется при отправке формы.

У вас есть способ добавить проверку в это поле с помощью jQuery?

PS: я не хочу использовать ручной метод, например, так:

$("#field").rules("add", {
    required: true,
    messages: {
        required: "Required input"
    }
});

Поскольку у меня есть правила в поле ввода, я хочу только применитьэто.

Ответы [ 2 ]

23 голосов
/ 26 февраля 2011

Похоже на хак, но вот как я это сделал.

// Target Form
var $form = $("**form selector**");

// Unbind existing validation
$form.unbind();
$form.data("validator", null);

// Check document for changes
$.validator.unobtrusive.parse(document);

// Re add validation with changes
$form.validate($form.data("unobtrusiveValidation").options);

Rich

6 голосов
/ 28 февраля 2011

Я решил здесь, используя

jQuery.validator.unobtrusive.parseElement($("#element")[0], false);
$.validator.unobtrusive.parseDynamicContent($("#element")[0]);

parseDynamicContent, который я получил здесь

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