wdmcln 发表于 2013-2-7 15:20:41

JavaScript开发类工具方法收集(一)

   相信大家做项目的时候,都会收集一些有用的小的javasciprt方法,或者开发一些应用于自己业务逻辑的JavaScript方法,但并不是每个项目中都会用到,往往上是项目数量一多,有些可重复使用的方法,在我们忙碌的工作中,却经常被不经意的忘记在自己的coding中; 其实项目中,比较深刻的感触到,每个项目中,我们都会有重复开发的一部分代码,这并不是因为我们的原因,而是因为项目组与项目组之间的交流太少,都是处于各自封闭的状态,有一种闭门造车的状态!因此,有了收集自己在项目中所用到一些JavaScript方法.
 
1. 限制只能输入小数,并且只能输入两位小数
  legionInput Function:
//用于输入两位小数,并可以在小数点前增加数字功能//author: dsy //date: 20080516function legionInput(obj, reg, inputStr){   //获取一个选择对象范围   var docSel = document.selection.createRange();   oSel = docSel.duplicate(); //创建选择范围复本   oSel.text = "";   var srcRange = obj.createTextRange(); //创建文本范围   oSel.setEndPoint("StartToStart", srcRange); //设置结束端   var str = oSel.text + inputStr + srcRange.text.substr                  (oSel.text.length);   return reg.test(str);} 

 
  CheckNumber Function:
 
/** * 检测主入口 * @author dsy * @param {Object} objId * @Date 20090523 */function CheckNumber(objId){   var obj = document.getElementById(objId);   obj.onkeypress = function(){          if ((event.keyCode < 48 || event.keyCode > 57)                && event.keyCode != 46) {               event.returnValue = false;          }         else {               return legionInput(this, /^\d*\.?\d{0,2}$/,                           String.fromCharCode(event.keyCode));          }   }} 
以上函数的使用方法,相当简单:
废话少说,上demo:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"><html>    <head>      <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />      <title>限制只能输入数字,并限制小数位</title>      <script type="text/javascript">            //用于输入两位小数,并可以在小数点前增加数字功能            //author: dsy             //date: 20080516            function legionInput(obj, reg, inputStr){                //获取一个选择对象范围                var docSel = document.selection.createRange();                oSel = docSel.duplicate(); //创建选择范围复本                oSel.text = "";                var srcRange = obj.createTextRange(); //创建文本范围                oSel.setEndPoint("StartToStart", srcRange); //设置结束端                var str = oSel.text + inputStr + srcRange.text.substr(oSel.text.length);                return reg.test(str);            }            /** * 检测主入口 * @author dsy * @param {Object} objId * @Date 20090523 */            function CheckNumber(objId){                var obj = document.getElementById(objId);                obj.onkeypress = function(){                  if ((event.keyCode < 48 || event.keyCode > 57) && event.keyCode != 46) {                        event.returnValue = false;                  }                  else {                        return legionInput(this, /^\d*\.?\d{0,2}$/, String.fromCharCode(event.keyCode));                  }                }            }window.onload = function() {CheckNumber("txt4")}      </script>    </head>    <body>      <input id="txt4" name="txt4" type="text" style="height: 24px;" size="15" />    </body></html> 
按上例所示:
只需在CheckNumber()函数,传入相应即可完成对输入是否是数字的限制
 
  
 
页: [1]
查看完整版本: JavaScript开发类工具方法收集(一)