function formCheck_x(formobj) {
	var fieldRequired = Array("email", "bkr", "adres_postcode_a", "adres_postcode_b", "adres_nr", "naam_letters", "naam_achter", "geslacht", "datum_geboorte_dag", "datum_geboorte_maand", "datum_geboorte_jaar", "adres_straat", "adres_plaats", "tel_overdag", "situatie", "woning", "hypotheek_indicatie", "contact", "reden_aanvraag", "inkomen_bruto", "burgerlijke_staat", "partner_dienst", "partner_inkomen");
	var fieldDescription = Array("Email adres", "BKR codering", "Postcode cijfers", "Postcode letters", "Huisnummer", "Voorletters", "Achternaam", "Geslacht", "Geboortedatum (dag)", "Geboortedatum (maand)", "Geboortedatum (jaar)", "Straatnaam", "Woonplaats", "Telefoon 1", "Dienstverband", "Huidige woning", "Gewenst hypotheekbedrag", "Contact moment", "Reden hypotheekaanvraag", "Uw huidige bruto jaarinkomen", "Burgerlijke staat", "Dienstverband Partner", "Inkomen Partner");
	var alertMsg = "De volgende velden zijn niet ingevuld:\n";
	
	var l_Msg = alertMsg.length;
	var controle_veld = formobj.burgerlijke_staat.selectedIndex; 
	for (var i = 0; i < fieldRequired.length; i++){
		var obj = formobj.elements[fieldRequired[i]];
		if (obj){
			switch(obj.type){
			case "select-one":
				// uitzondering voor partner
				if (fieldRequired[i] == 'partner_dienst' || fieldRequired[i] == 'partner_inkomen') {
					if (controle_veld == 1 || controle_veld == 2) {
						if (obj.selectedIndex == -1 || obj.options[obj.selectedIndex].value == ""){
							alertMsg += " - " + fieldDescription[i] + "\n";
						}
					} else {
						// niets doen
					}
				} else {
					if (obj.selectedIndex == -1 || obj.options[obj.selectedIndex].value == ""){
						alertMsg += " - " + fieldDescription[i] + "\n";
					}
				}
				break;
			case "select-multiple":
				if (obj.selectedIndex == -1 || obj.options[obj.selectedIndex].value == ""){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
				break;
			case "text":
			case "password":
			case "textarea":
				if (obj.value == "" || obj.value == null){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
				break;
			default:
			}
			if (obj.type == undefined){
				var blnchecked = false;
				for (var j = 0; j < obj.length; j++){
					if (obj[j].checked){
						blnchecked = true;
					}
				}
				if (!blnchecked){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
			}
		}
	}

	if (alertMsg.length == l_Msg){
		return true;
	}else{
		alert(alertMsg);
		return false;
	}
}
