var valid=true;
//Для правильной инициализации valid
function init_validate(FormObj)
{
	valid=true;
	validate(FormObj);
	if(valid){return true;}
	else{return false;}
}
//Функция проверки
function validate(FormObj)
		{
			var children=FormObj.childNodes;
			var regExpObj=/(.+)@(.+)\.(.+)/;
			//Пробежимся по всем потомкам формы
			for (var i=0; i<children.length; i++)
				{
					if(children.item(i).tagName=='INPUT' || children.item(i).tagName=='TEXTAREA')
						{
							if(children.item(i).getAttribute('validate'))
							{
								//Сама проверка валидности
								switch (children.item(i).getAttribute('validate'))
								{
									//Проверка на пустое значение
									case 'not_empty': if(children.item(i).value=='')
									{

										alert("Поле не должно быть пустым!");
										children.item(i).style.backgroundColor='red';
										valid=false;
									}
									break;
									//Проверка на числовое значение
									case 'number':
										if(parseFloat(children.item(i).value)!=children.item(i).value)
										{
											alert("Не число!");
											children.item(i).style.backgroundColor='red';
                                            valid=false;
										}
									break;
									case 'email':
										if(!regExpObj.test(children.item(i).value))
										{
											alert("Не e-mail!");
											children.item(i).style.backgroundColor='red';
                                            valid=false;
										}
									break;
								}

							}
						}
					if(children.item(i).hasChildNodes){validate(children.item(i));}
				}
			if(valid)
				{return true;}
		        else
				{return false;}
		}



