Необходимо написать простую проверку формы. Если необходимые поля формы не заполнены, то подсвечивать их красным и не отправлять форму.
Сейчас это выглядит так (и это работает):
//проверка формы заказа
function formsubmit(formName, reqFieldArr){		
	var curForm = new formObj(formName, reqFieldArr);
	if(curForm.valid)
		curForm.send();
	else
		curForm.paint();//покраска незаполенных полей	
}
//объект форма
function formObj(formName, reqFieldArr){
	var filledCount = 0;
	var fieldArr = new Array();
	for(i=reqFieldArr.length-1; i>=0; i--){
		fieldArr[i] = new fieldObj(formName, reqFieldArr[i]);
		if(fieldArr[i].filled == true)
		filledCount++;
	}
	
	//валидность
	if(filledCount == fieldArr.length)
		this.valid = true;
	else
		this.valid = false;
	
	
	//покраска незаполенных полей
	this.paint = function(){
		for(i=fieldArr.length-1; i>=0; i--){
			if(fieldArr[i].filled == false)
				fieldArr[i].paintInRed();
			else
				fieldArr[i].unPaintInRed();
		}
	}
	
	//отправка
	this.send = function(){
		document.forms[formName].submit();
	}
}
//объект поле
function fieldObj(formName, fName){
	var curField = document.forms[formName].elements[fName];
	
	if(curField.value != '')
		this.filled = true;
	else
		this.filled = false;
		
	this.paintInRed = function(){
		curField.addClassName('red');
	}
	
	this.unPaintInRed = function(){
		curField.removeClassName('red');
	}
}
Вызывается проверка так:
<input type="button" onClick="formsubmit('orderform', ['name', 'post', 'payer', 'recipient', 'good'])" value="Отправить" />
Задача: как повесть onChange и blur на необходимые поля формы 
в рамках этого кода? 
Например: если поле подсвечено красным и пользователь начинает его заполнять, то оно должно становится белым.
Если весь код - полная ерунда, то как это сделать лучше (нужен "
объектный") вариант?