function formchecker(theForm) {
	var allvalid = true;
	var alertstr = "";
	var num_of_elements = theForm.length;
	var radios = "";
	var checkboxes = "";

	for (var i=0; i<num_of_elements; i++) {
		var theElement = theForm.elements[i];
		var element_type = theElement.type;
		var element_name = theElement.name;
		var element_value = theElement.value;
		var element_required = (element_name.indexOf ("_obligatorisch") > 0) ? true : false;

// Muss dieses element geprueft werden?
		if (element_required) {

// Textfelder pruefen...
			if (element_type == "text") {
				if (element_value.length == 0) {
					alertstr += "Das Feld '" + element_name.replace(/ _obligatorisch/, '').replace(/_obligatorisch/, '') + "' erfordert eine Eingabe.\n\n";
					allvalid = false;
				}
			}

// Mehrzeilige Textfelder pruefen...
			if (element_type == "textarea") {
				if (element_value.length == 0) {
					alertstr += "Das Feld '" + element_name.replace(/ _obligatorisch/, '').replace(/_obligatorisch/, '') + "' erfordert eine Eingabe.\n\n";
					allvalid = false;
				}
			}

// Dropdown-Menues pruefen...
			if (element_type.indexOf("select") > -1) {
				var index = theElement.selectedIndex;
				if (index <= 0) {
					alertstr += "Das Dropdownmenü '" + element_name.replace(/ _obligatorisch/, '').replace(/_obligatorisch/, '') + "' erfordert eine Auswahl.\n\n";
					allvalid = false;
				}
			}

// Radio-buttons pruefen...
			if (element_type == "radio" ) {
				if (theElement.checked == true) {
					radios += element_name;
				}
			}

// Checkboxen pruefen...
			if (element_type == "checkbox") {
				if (theElement.checked == true) {
					checkboxes += element_name;
				}
			}

// Buttons pruefen...
			if (element_type == "button") {
				// Buttons nicht pruefen - onClick event verwenden, um Functionen aufzurufen.
			}

// Ende des zu pruefenden Bereichs?
		}

 	// .... Ende der Schleife durch die einzelnen Form-Elemente ....
	}

// Schleife durch Radio-Buttons und Checkboxen fuer die Pruefung
	for (var i=0; i<num_of_elements; i++) {
		var theElement = theForm.elements[i];
		var element_type = theElement.type;
		var element_name = theElement.name;
		var element_required = (element_name.indexOf ("_obligatorisch") > 0) ? true : false;
		if (element_type == "radio" && element_required && radios.indexOf (element_name) == -1) {
			alertstr += "Die Radio-Buttons '" + element_name.replace(/ _obligatorisch/, '').replace(/_obligatorisch/, '') + "' erfordern eine Auswahl.\n\n";
			radios += element_name;
			allvalid = false;
		}
		if (element_type == "checkbox" && element_required && checkboxes.indexOf (element_name) == -1) {
			alertstr += "Die Checkbox '" + element_name.replace(/ _obligatorisch/, '').replace(/_obligatorisch/, '') + "'  erfordert eine Auswahl.\n\n";
			checkboxes += element_name;
			allvalid = false;
		}
	}


// Alle Elemente wurden geprueft - jetzt wird ermittelt, ob das Formular korrekt ausgefuellt wurde oder nicht...
	if (allvalid) {
		return true; 
	} else {
		alert (alertstr);
		return false;
	}
}