numerictext = {

	init:function(){
		var arrInputs = document.getElementsByTagName('input');
		for(var i=0; i<arrInputs.length; i++) numerictext.initObj(arrInputs[i]);
		},

	initObj:function(obj){
		if(!obj) return;
		var inputElement = obj;
		if(inputElement.tagName!='INPUT' || !inputElement.getAttributeNode('type')) return;
		var inputElementType = inputElement.getAttributeNode('type').value;
		if(inputElementType!='text') return;
		var inputElementClass = inputElement.className;
		if(inputElementClass.indexOf('numerictextJS')==-1) return;

		inputElement.onkeypress = function(event){return this.ntNoNumbers(event);}
		inputElement.onblur = function(){this.ntEnsureNumeric();}
		inputElement.onchange = function(){this.ntEnsureNumeric();}
		inputElement.ntEnsureNumeric = function(){
			this.value = this.value.replace(/([^-]+)[-]+/g,'$1');
			this.value = this.value.replace(/[-]+/g,'-');
			this.value = this.value.replace(/[^0-9|-]+/g,'');
			}
		inputElement.ntNoNumbers = function(e){
			var keynum;
			var keychar;
			var numcheck;
			if(window.event) e = window.event;
			if(window.event) keynum = e.keyCode;//IE
			else if(e.which) keynum = e.which;//Netscape,Firefox,Opera
			keychar = String.fromCharCode(keynum);
			numcheck = /\d|-/;
			if(keynum!=8 && keynum!=undefined && !numcheck.test(keychar)){
				e.returnValue = false;
				return false;
				}
			}
		}

	}
