function formCheck_x(formobj) {
	var fieldRequired = Array("email", "adres_postcode_a", "adres_postcode_b", "adres_nr", "bkr",  "naam_letters", "naam_achter", "geslacht", "datum_geboorte_dag", "datum_geboorte_maand", "datum_geboorte_jaar", "adres_straat", "adres_plaats", "tel_overdag", "tel_avond", "situatie", "woning", "hypotheek_indicatie", "reden_aanvraag", "inkomen_bruto", "burgerlijke_staat", "partner_dienst", "partner_inkomen");
	var fieldDescription = Array("Email adres", "Postcode cijfers", "Postcode letters", "Huisnummer", "BKR codering", "Voorletters", "Achternaam", "Geslacht", "Geboortedatum (dag)", "Geboortedatum (maand)", "Geboortedatum (jaar)", "Straatnaam", "Woonplaats", "Telefoonnummer overdag", "Telefoonnummer avond", "Dienstverband", "Huidige woning", "Gewenst hypotheekbedrag", "Reden hypotheekaanvraag", "Uw huidige bruto jaarinkomen", "Burgelijke 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;
	}
}
