// =================================================================== // Author: Matt Kruse // WWW: http://www.mattkruse.com/ // // NOTICE: You may use this code for any purpose, commercial or // private, without any further permission from the author. You may // remove this notice from your final code if you wish, however it is // appreciated by the author if at least my web site address is kept. // // You may *NOT* re-distribute this code in any way except through its // use. That means, you can include it in your product, or your web // site, or any other form where the code is actually being used. You // may not put the plain javascript up on your site for download or // include it in your javascript libraries for download. // If you wish to share this code with others, please just point them // to the URL instead. // Please DO NOT link directly to my .js files from your site. Copy // the files to your server and use them there. Thank you. // =================================================================== // HISTORY // ------------------------------------------------------------------ // December 29, 2003: Added the option to specify a delimiter for // multiple valued input field via getInputValue(), etc. //------------------------------------------------------------------- // Trim functions // Returns string with whitespace trimmed //------------------------------------------------------------------- function LTrim(str){ if (str==null){return null;} for(var i=0;str.charAt(i)==" ";i++); return str.substring(i,str.length); } function RTrim(str){ if (str==null){return null;} for(var i=str.length-1;str.charAt(i)==" ";i--); return str.substring(0,i+1); } function Trim(str){return LTrim(RTrim(str));} function LTrimAll(str) { if (str==null){return str;} for (var i=0; str.charAt(i)==" " || str.charAt(i)=="\n" || str.charAt(i)=="\t"; i++); return str.substring(i,str.length); } function RTrimAll(str) { if (str==null){return str;} for (var i=str.length-1; str.charAt(i)==" " || str.charAt(i)=="\n" || str.charAt(i)=="\t"; i--); return str.substring(0,i+1); } function TrimAll(str) { return LTrimAll(RTrimAll(str)); } //------------------------------------------------------------------- // isNull(value) // Returns true if value is null //------------------------------------------------------------------- function isNull(val){return(val==null);} //------------------------------------------------------------------- // isBlank(value) // Returns true if value only contains spaces //------------------------------------------------------------------- function isBlank(val){ if(val==null){return true;} for(var i=0;i1){return false;} var string="1234567890"; if (string.indexOf(num)!=-1){return true;} return false; } //------------------------------------------------------------------- // setNullIfBlank(input_object) // Sets a form field to "" if it isBlank() //------------------------------------------------------------------- function setNullIfBlank(obj){if(isBlank(obj.value)){obj.value="";}} //------------------------------------------------------------------- // setFieldsToUpperCase(input_object) // Sets value of form field toUpperCase() for all fields passed //------------------------------------------------------------------- function setFieldsToUpperCase(){ for(var i=0;i1)?arguments[1]:""; var dofocus=(arguments.length>2)?arguments[2]:false; if (isBlank(getInputValue(obj))){ if(!isBlank(msg)){alert(msg);} if(dofocus){ if (isArray(obj) && (typeof(obj.type)=="undefined")) {obj=obj[0];} if(obj.type=="text"||obj.type=="textarea"||obj.type=="password") { obj.select(); } obj.focus(); } return true; } return false; } //------------------------------------------------------------------- // disallowModify(input_object[,message[,true]]) // Checks a form field for a value different than defaultValue. // Optionally alerts and focuses //------------------------------------------------------------------- function disallowModify(obj){ var msg=(arguments.length>1)?arguments[1]:""; var dofocus=(arguments.length>2)?arguments[2]:false; if (getInputValue(obj)!=getInputDefaultValue(obj)){ if(!isBlank(msg)){alert(msg);} if(dofocus){ if (isArray(obj) && (typeof(obj.type)=="undefined")) {obj=obj[0];} if(obj.type=="text"||obj.type=="textarea"||obj.type=="password") { obj.select(); } obj.focus(); } setInputValue(obj,getInputDefaultValue(obj)); return true; } return false; } //------------------------------------------------------------------- // commifyArray(array[,delimiter]) // Take an array of values and turn it into a comma-separated string // Pass an optional second argument to specify a delimiter other than // comma. //------------------------------------------------------------------- function commifyArray(obj,delimiter){ if (typeof(delimiter)=="undefined" || delimiter==null) { delimiter = ","; } var s=""; if(obj==null||obj.length<=0){return s;} for(var i=0;i0)?obj.options[obj.selectedIndex].value:null; case 'select-multiple': if (obj.options==null) { return null; } var values=new Array(); for(var i=0;i0)?obj.options[obj.selectedIndex].text:null; case 'select-multiple': if (obj.options==null) { return null; } var values=new Array(); for(var i=0;i2)?arguments[2]:false; if (isArray(obj) && (typeof(obj.type)=="undefined")) { var values=new Array(); for(var i=0;i2)?arguments[2]:false; if (isArray(obj) && (typeof(obj.type)=="undefined")) { var values=new Array(); for(var i=0;i1)?arguments[1]:false; if(isArray(obj)&&(typeof(obj.type)=="undefined")){ for(var i=0;i