Здравствуйте. Решил написать функцию валидации полей формы вот код
function valid(a){
	$('.names').blur(function(){
		var vall = $(this).val(); //Снимаем значение поля
		var	rezult = (a).test(vall); //Сравниваем с регуляркой
			alert(rezult);
	});}
valid((/^[а-я\-]+$/ig) ); //Вызываем функцию
Как видно из кода переменной а передаю регулярку.
Так вот если сделать как написано сейчас при срабатывании события blur() alert будет попеременно выдавать то true то false - это при том что значение поля не меняется. 
А если сделать так 
function valid(){
	$('.names').blur(function(){
		var vall = $(this).val(); //Снимаем значение поля
		var	rezult = (/^[а-я\-]+$/ig).test(vall); //Сравниваем с регуляркой
			alert(rezult);
	});}
valid(); //Вызываем функцию
То есть регулярку прописать в функции то работает нормально.
Но нужно реализовать первый вариант так как для каждого поля разные регулярные выражения.
Код написан сокращенно - типа отладочного что бы не парится с ненужными строками.
Буду признателен за помощь.