/* Set of JavaScript functions used throughout the database...... */ function trim(aStr) { return aStr.replace(/^\s{1,}/, "").replace(/\s{1,}$/, "") } function validateRequiredFields( f ){ for (var i=0; i < f.elements.length; i++){ e = f.elements[i]; /* Split apart the arguments in to a 2 dimensional array! format - Failure Alert Label # Required (true|false) */ a = e.id.split("#"); //checks input types - :"text", "select-one", "select-multiple", "textarea", ["checkbox", "radio"] if ( a[1] == "true" ) { switch (e.type) { case "text": if ( trim(e.value) == "" ){ alert(a[0] + " e' un campo obbligatorio. \n\nInserire un valore."); e.focus(); return false} break case "textarea": if ( trim(e.value) == "" ){ alert(a[0] + " e' un campo obbligatorio. \n\nInserire un valore."); e.focus(); return false} break case "select-one": if ( e.selectedIndex == 0 ){ alert(a[0] + " e' un campo obbligatorio. \n\nInserire un valore."); e.focus(); return false} break case "checkbox": hasChecked = false; p = eval("e.form." + e.name); for (var r=0; r < p.length; r++){ if ( p[r].checked ){hasChecked = true}; } if (!hasChecked) { alert(a[0] + " e' un campo obbligatorio. \n\nInserire un valore."); e.focus(); return hasChecked; } break case "radio": hasChecked = false; p = eval("e.form." + e.name); for (var r=0; r < p.length; r++){ if ( p[r].checked ){hasChecked = true}; } if (!hasChecked) { alert(a[0] + " e' un campo obbligatorio. \n\nInserire un valore."); e.focus(); return hasChecked; } break default: break } } } return true; } function doSubmit(f, v){ if ( v ){ if ( validateRequiredFields( f ) ){ f.submit(); } } else { f.submit(); } } /* Can't work out how to do it for radio collection ! If anybody does, please let me know - jake@codestore.net case "radio": hasChecked = false; for (var r=0; r < e.length; r++){ if ( e[r].checked ){hasChecked = true}; } alert(hasChecked); return hasChecked; break */