2014-02-16 3 views
4

Я просмотрел множество сообщений по этому вопросу и работал над ним так, что он проверяет мои поля, когда добавляю следующее.Добавление проверки jQuery к элементам kendo ui

$.validator.setDefaults({ 
    ignore: [] 
}); 

Часть я до сих пор не хватает является добавление input-validation-error класс для уведомления пользователя. Он отлично работает для других моих входных элементов (не кендо). Я попытался добавить класс вручную в $.validator.setDefaults, но ничего не работает.

Есть ли какой-нибудь пример где-нибудь или кто-нибудь получил его на работу?

Я не уверен, что я делаю это правильно, но вот что я пытался добавить вручную.

$.validator.setDefaults({ 
    ignore: [], 
    errorClass: "input-validation-error", 
    errorElement: "input", 
    highlight: function (element, errorClass) { 
     $(element).addClass(errorClass) 
    }, 
    unhighlight: function (element, errorClass) { 
     $(element).removeClass(errorClass) 
    } 
}); 
+0

Вопрос не имеет смысла. По умолчанию плагин игнорирует все скрытые поля. Установка 'ignore: []' просто отключает опцию 'ignore'. Другими словами, 'ignore: []' позволяет проверять скрытые поля, а не игнорировать. Каков ваш вопрос в отношении скрытых полей? Где ваша разметка _rendered_ HTML? – Sparky

+0

@Sparky kendo и скрытые поля - http://www.telerik.com/forums/mvc-unobtrusive-validation-doesn't-work – aw04

ответ

7

Я нашел решение на основе this post. В основном то, что вам нужно сделать, это посмотреть на родительский элемент, что input обернута в что-то вроде этого:.

$.validator.setDefaults({ 
    ignore: [], 
    highlight: function (element, errorClass) { 
     element = $(element); 
     if (element.parent().hasClass("k-widget")) { 
      element.parent().addClass('input-validation-error'); 
     } else { 
      element.addClass('input-validation-error') 
     } 
    }, 
    unhighlight: function (element, errorClass) { 
     element = $(element); 
     if (element.parent().hasClass("k-widget")) { 
      element.parent().removeClass('input-validation-error'); 
     } else { 
      element.removeClass('input-validation-error') 
     } 
    } 
}); 

Я советовал бы любому, хотя посетить этот пост, я связан с выше перед взлетом вниз это конкретная кроличья дыра, поскольку она вводит еще одну проблему, просто чтобы быть в курсе того, что вы получаете. Исключенный ответ действительно более уместен для этого вопроса, чем тот, который его спрашивает.

Смежные вопросы