

/* This script and many more are available free online at
The JavaScript Source!! http://javascript.internet.com
Created by: Corneliu Lucian 'Kor' Rusu | corneliulucian[at]gmail[dot]com */
var r={
  'special':/[\W]/g, //  This field will not accept special characters: (like !@#$%* etc,) - but accepts underscore : onkeyup="valid(this,'special')" onblur="valid(this,'special')"
  'quotes':/['\''&'\"']/g, //  This field will not accept double or single quotes:  onkeyup="valid(this,'quotes')" onblur="valid(this,'quotes')"
  'notnumbers':/[^\d]/g, //  This field will only accept integer numbers:  onkeyup="valid(this,'notnumbers')" onblur="valid(this,'notnumbers')"
  'numandcoma':/[^\d\,]/g //  This field will only accept integer numbers:  onkeyup="valid(this,'notnumbers')" onblur="valid(this,'notnumbers')"
}

function valid(o,w){
  o.value = o.value.replace(r[w],'');
//if (o.value=='')
//{
//	o.value='0';
//}

}

          <!--
         
        function ValidateNumberKeyPress(field, evt)
        {
            var charCode = (evt.which) ? evt.which : event.keyCode
            var keychar = String.fromCharCode(charCode);

            if (charCode > 31 && (charCode < 48 || charCode > 57) && keychar != "."  && keychar != "-" )
            {
                return false;
            }

            if (keychar == "." && field.value.indexOf(".") != -1) 
            {
                return false;
            }
                
            if(keychar == "-")
            {
                if (field.value.indexOf("-") != -1 /* || field.value[0] == "-" */) 
                {
                    return false;
                }
                else
                {
                    //save caret position
                    var caretPos = getCaretPosition(field);
                    if(caretPos != 0)
                    {
                        return false;
                    }
                }
            }

            return true;
        }

        function ValidateNumberKeyUp(field)
        {
            if(document.selection.type == "Text")
            {
                return;
            }
        
             //save caret position
            var caretPos = getCaretPosition(field);
            
            var fdlen = field.value.length;
       
            UnFormatNumber(field);
 
            var IsFound = /^-?\d+\.{0,1}\d*$/.test(field.value);
            if(!IsFound)
            {
                setSelectionRange(field, caretPos, caretPos);
                return false;             
            }
            
            field.value = FormatNumber(field.value);
            
            fdlen = field.value.length - fdlen;

            
            setSelectionRange(field, caretPos+fdlen, caretPos+fdlen);
        }

        function ValidateAndFormatNumber(NumberTextBox)
        {
            if(NumberTextBox.value == "") return;
            
            UnFormatNumber(NumberTextBox);

            var IsFound = /^-?\d+\.{0,1}\d*$/.test(NumberTextBox.value);
            if(!IsFound)
            {
                alert("Not a number");
                NumberTextBox.focus();
                NumberTextBox.select();  
                return;             
            }
            
            if(isNaN(parseFloat(NumberTextBox.value)))
            {
                alert("Number exceeding float range");
                NumberTextBox.focus();
                NumberTextBox.select();               
            }

            NumberTextBox.value = FormatNumber(NumberTextBox.value);
        }
        
        function FormatNumber(fnum)
        {
            var orgfnum = fnum;
            var flagneg = false;
            
            if(fnum.charAt(0) == "-")
            {
                flagneg = true;
                fnum = fnum.substr(1, fnum.length-1);
            }
            
            psplit = fnum.split(".");

            var cnum = psplit[0],
	            parr = [],
	            j = cnum.length,
	            m = Math.floor(j / 3),
	            n = cnum.length % 3 || 3;

            // break the number into chunks of 3 digits; first chunk may be less than 3
            for (var i = 0; i < j; i += n) {
	            if (i != 0) {n = 3;}
	            parr[parr.length] = cnum.substr(i, n);
	            m -= 1;
            }

            // put chunks back together, separated by comma
            fnum = parr.join(",");

            // add the precision back in
            //if (psplit[1]) {fnum += "." + psplit[1];}
            if (orgfnum.indexOf(".") != -1)  
            {
                fnum += "." + psplit[1];
            }
            
            if(flagneg == true)
            {
                fnum = "-" + fnum;
            }
            
            return fnum;
        }
           
        function UnFormatNumber(obj)
        {
            if(obj.value == "") return;
            
            obj.value = obj.value.replace(/,/gi, "");
        }
        
        function getCaretPosition(objTextBox){

            var objTextBox = window.event.srcElement;

            var i = objTextBox.value.length;

            if (objTextBox.createTextRange){
                objCaret = document.selection.createRange().duplicate();
                while (objCaret.parentElement()==objTextBox &&
                  objCaret.move("character",1)==1) --i;
            }
            return i;
        }

        function setSelectionRange(input, selectionStart, selectionEnd) {
            if (input.setSelectionRange) {
                input.focus();
                input.setSelectionRange(selectionStart, selectionEnd);
            }
            else if (input.createTextRange) {
                var range = input.createTextRange();
                range.collapse(true);
                range.moveEnd('character', selectionEnd);
                range.moveStart('character', selectionStart);
                range.select();
            }
        }

      //-->



 // This function formats numbers by adding commas
function numberFormat(nStr){
  nStr += '';
  x = nStr.split('.');
  x1 = x[0];
  x2 = x.length > 1 ? '.' + x[1] : '';
  var rgx = /(\d+)(\d{3})/;
  while (rgx.test(x1))
    x1 = x1.replace(rgx, '$1' + ',' + '$2');
  return x1 + x2;
}
 
// This function removes non-numeric characters
function stripNonNumeric( str ){
  str += '';
  var rgx = /^\d|\.|-$/;
  var out = '';
  for( var i = 0; i < str.length; i++ ){
    if( rgx.test( str.charAt(i) ) ){
      if( !( ( str.charAt(i) == '.' && out.indexOf( '.' ) != -1 ) ||
             ( str.charAt(i) == '-' && out.length != 0 ) ) ){
        out += str.charAt(i);
      }
    }
  }
  return out;
}

function toggleit(theDiv)
{
var toggleArray= theDiv.split(',');
	
	var x = 0;
	while (x<toggleArray.length) {
				if(document.getElementById(toggleArray[x]).style.display == 'block' || document.getElementById(toggleArray[x]).style.display == '' || document.getElementById(toggleArray[x]).style.display == 'inline' )
					{
					document.getElementById(toggleArray[x]).style.display = 'none';
					}
					else
					{
						if(document.getElementById(toggleArray[x]).tagName =='div' || document.getElementById(toggleArray[x]).tagName =='Div' || document.getElementById(toggleArray[x]).tagName =='DIV' )
							{
							document.getElementById(toggleArray[x]).style.display = 'block';
							}
						else
							{
							document.getElementById(toggleArray[x]).style.display = 'inline';
							}
					}
	x++;
	} 
	
}	


//
//function changecss(theClass,element,value) {
//	//Last Updated on June 23, 2009
//	//documentation for this script at
//	//http://www.shawnolson.net/a/503/altering-css-class-attributes-with-javascript.html
//	 var cssRules;
//
//	 var added = false;
//	 for (var S = 0; S < document.styleSheets.length; S++){
//
//    if (document.styleSheets[S]['rules']) {
//	  cssRules = 'rules';
//	 } else if (document.styleSheets[S]['cssRules']) {
//	  cssRules = 'cssRules';
//	 } else {
//	  //no rules found... browser unknown
//	 }
//
//	  for (var R = 0; R < document.styleSheets[S][cssRules].length; R++) {
//	   if (document.styleSheets[S][cssRules][R].selectorText == theClass) {
//	    if(document.styleSheets[S][cssRules][R].style[element]){
//	    document.styleSheets[S][cssRules][R].style[element] = value;
//	    added=true;
//		break;
//	    }
//	   }
//	  }
//	  if(!added){
//	  if(document.styleSheets[S].insertRule){
//			  document.styleSheets[S].insertRule(theClass+' { '+element+': '+value+'; }',document.styleSheets[S][cssRules].length);
//			} else if (document.styleSheets[S].addRule) {
//				document.styleSheets[S].addRule(theClass,element+': '+value+';');
//			}
//	  }
//	 }
//	}
//
//function changethiscss(theID,element,value) {
//	document.getElementById(theID).style.element = value;
//}
//
//function switchbyclass(class,styleval,val,theID) {
//	var testClass = new RegExp("(^|\\\\s)" + className + "(\\\\s|$)");
//	var tag = tag || "*";
//	var elm = elm || document;
//	var elements = (tag == "*" && elm.all)? elm.all : elm.getElementsByTagName(tag);
//	var returnElements = [];
//	var current;
//	var length = elements.length;
//	for(var i=0; i<length; i++){
//		current = elements[i];
//		if(testClass.test(current.className)){
//			returnElements.push(current);
//		}
//		document.testClass.style.sytleval = val;
//	}
//	return returnElements;
//
//	document.getElementById(theID).style.diplay = 'block';
//}
//
///* This script and many more are available free online at
//The JavaScript Source!! http://javascript.internet.com
//Created by: Robert Nyman | http://www.robertnyman.com */
//
//function getElementsByClassName(className, tag, elm){
//	var testClass = new RegExp("(^|\\\\s)" + className + "(\\\\s|$)");
//	var tag = tag || "*";
//	var elm = elm || document;
//	var elements = (tag == "*" && elm.all)? elm.all : elm.getElementsByTagName(tag);
//	var returnElements = [];
//	var current;
//	var length = elements.length;
//	for(var i=0; i<length; i++){
//		current = elements[i];
//		if(testClass.test(current.className)){
//			returnElements.push(current);
//		}
//	}
//	return returnElements;
//}
//


// submit form 
function SubmitForm(actn,formname)
{
document.formname.action = actn;
document.formname.submit()
}