2012-07-04 2 views
0

У меня есть текстовое поле с идентификатором «имя», я хочу сделать проверку, когда текстовое поле получит функцию onblur. Код ниже не работает. Что со мной не так?JQuery: Как сделать проверку на размытие текстового поля?

$(function() { 
    $('name').validate({ 
     rules:{ "name": {required: true, minlength: 5 } } 
    }); 
    $('name').blur(function(){ 
     $('name').validate() 
    }); 
    }; 

ответ

3

Рабочая Демонстрационныйhttp://jsfiddle.net/qC2Ya/или это один путь более короче и холоднееhttp://jsfiddle.net/XdAkv/

Все, что вам нужно сделать, это добавить проверку элемента на blur события и что будет работать как ракета.

См элемент проверки апи: http://docs.jquery.com/Plugins/Validation/Validator/element#element

Надеется, что это помогает :)

код

var v = $("form").validate({ 
    submitHandler: function() { 
     console.log('successful submit'); 
     return false; 
    } 
}); 

$('#firstName').blur(function(){ 
    v.element('#firstName'); 
}); 

$('#lastName').blur(function(){ 
    v.element('#lastName'); 
}); 

ИЛИ из вторых демо

$("form").validate({ 
    submitHandler: function() { 
     console.log('successful submit'); 
     return false; 
    } 
}); 

$('#firstName,#lastName').blur(function(){ 
    $("form").validate().element($(this)) 
}); 
1

Опция onfocusout, установленная в false, будет проверять элементы (кроме флажков/переключателей) при размытии. doc.

$('form').validate({ 
    onfocusout: false, 
    rules:{ "name": {required: true, minlength: 5 } } 
}); 
+0

Действительно, это действительно также +1. ':)' –

+0

У меня нет элемента формы ... это просто текстовое поле –

+0

спасибо за ваш комментарий, можете ли вы привести пример этой конфигурации на jsfiddle. Я действительно не могу получить эту работу – nXqd

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