Показать сообщение отдельно
  #10 (permalink)  
Старый 09.06.2016, 11:41
Профессор
Отправить личное сообщение для Shitbox2 Посмотреть профиль Найти все сообщения от Shitbox2
 
Регистрация: 04.10.2010
Сообщений: 571

Раз не получается просто, сделал примерчик. Может быть еще какие-то способы есть?
//Пользовательский валидатор. Мы не можем его контролировать и название поля с сообщением мы не знаем
function isMax(value, options) {
    if (value > options.max) {
        return options.maxMessage;
        // return options.maxMessageXXX //поле с сообщением может не существовать
        // return 'Плохое число' //вернул свое сообщение
    }
}

//Наша обертка. Здесь мы можем подменить options
function validateMax(value, options) {
    var result = isMax(value, options);

    if (!result) {
        return 'Валидно'
    }
    return result;
}

alert(validateMax(3, {max: 2, maxMessage: 'Слишком большое'}));
alert(validateMax(3, {max: 2})); //Неверное поведение
alert(validateMax(1, {max: 2, maxMessage: 'Слишком большое'}));

Последний раз редактировалось Shitbox2, 09.06.2016 в 11:44.
Ответить с цитированием