Сообщение об ошибке проверки MVC3 во всплывающей подсказке - PullRequest
0 голосов
/ 20 февраля 2012

Я новичок в ASP.NET и MVC3.У меня есть проект, где сообщение об ошибке проверки MVC3 должно отображаться в подсказке без обновления jquery.validate.unobtrusive.js.Я пробовал это

нажмите здесь

Но не смог заставить его работать.Вот функция, которую я должен использовать по ссылке выше.Здесь написано что-то сделать ... Я не мог понять, какой код я должен написать, чтобы показать сообщение об ошибке со значком ошибки рядом с обязательным полем, когда проверка не пройдена.

$(function() {
    var settngs = $.data($('form')[0], 'validator').settings;
    var oldErrorFunction = settngs.errorPlacement;
    var oldSucessFunction = settngs.success;
    settngs.errorPlacement = function (error, inputElement) {
        //Do something here
        oldErrorFunction(error, inputElement);
    }
    settngs.success = function (error) {
        //Do something here
        oldSucessFunction(error);
    }
});

Кто-нибудь может помочь?

Ответы [ 2 ]

5 голосов
/ 21 февраля 2012

Вы можете использовать следующие CSS,

.myfield-validation-error
{
    content: "";
    display: inline-block;
    height: 16px;
    width: 16px;
    margin-right: 4px;
    background-image:url(../../Images/Close-2-icon.png);
}
.myfield-validation-valid
{
    content: "";
    display: inline-block;
    height: 16px;
    width: 16px;
    margin-right: 4px;
    background-image:url(../../Images/Ok-icon.png);
}

Затем вы можете использовать эти классы при обратном вызове при успехе и неудаче,

<script>
    $(function () {
        var settngs = $.data($('form')[0], 'validator').settings;
        var oldErrorFunction = settngs.errorPlacement;
        var oldSucessFunction = settngs.success;
        settngs.errorPlacement = function (error, inputElement) {
            $(inputElement).closest('div').next().removeClass('myfield-validation-valid').addClass('myfield-validation-error')
            oldErrorFunction(error, inputElement);
        }
        settngs.success = function (error) {
            $(error).closest('div').addClass('myfield-validation-valid').removeClass('myfield-validation-error')
            oldSucessFunction(error);
        }
    });
</script>

Далее проверьте эту ссылку.

1 голос
/ 20 февраля 2012

Если вы используете MVC3, вы можете использовать предоставленную проверку. Взгляните на Account Controller - Register View для примера того, как его реализовать.

Исследования (в поле зрения):

@Html.ValidationSummary (true, "Создание учетной записи не удалось. Пожалуйста, исправьте ошибки и попробуйте снова. ")

и класс для:

System.ComponentModel.DataAnnotations.RequiredAttribute

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