几个好用的JS函数

js|函数

// 判断是不是数字create by qiujy
 function isNumber(str){
     var flag = true;
    
     for(i = 0; i < str.length; i++){
         var ch = elementValue.charAt(i);
         if(ch > '9' || ch < '0'){
             flag = false;
             break;
         }
     }
    
     return flag;
 }
 // 判断是否为空
 function isEmpty(str){
     if(str.length == 0){
         return true;
     }
     return false;
 }

 // 对于select,验证其必须有一个带值的option被选中,否则返回false
 function checkSelect(sel){
  var flag = false;
  for(i = 0;i < sel.options.length;i++){
   var op = sel.options[i];
   if(op.value != "" && op.selected == true){
    flag = true;
   }  
  }
   return flag;
 }

 // 对于多个的checkbox,验证它必须至少有一个被选中,否则返回false
 function checkCheckBox(che){
  var result = false;
  if((typeof che.length) == "number"){
   for(i = 0;i < che.length ;i++){
    if(che[i].checked){
     return true;
    }
   }
  }else{
   // alert("OK!");
   // alert(che.checked);
   if(che.checked){
    return true;
   }
  }
  return result;
 }

 // 验证设定的密码的有效性
 // 调用样例
 //<input type="text" name="userName" >
 //<input type="text" name="userName2" >
 //<input name="Submit2" type="button" class="niu1" value="检测" >

 function checkPassword(str1,str2) {
  if(str1.length == 0 ){
   alert("密码不能为空");
   return false;
  }
  if(str1.length > 18 || str1.length < 4){
   alert("请将密码长度设置在 4-18 位!");
   return false;
  }
  //密码验证
  if(str1 != str2){
   alert("两次输入的密码不一致!");
   return false;
  }
  return true;
 }
  

 // 电子信箱格式校验
 function checkEMailFormat(str){
  var reg = /^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3}$/;
  var result = str.match( reg );
  if( result == null )
   {
    alert( '请输入正确的电子邮件地址' );
    return false;
   }
   return true;
 }

 // 用户名格式校验,允许数字,字母,下滑线
 function checkUserIdFormat(str){
   var reg = /\w/;
   var result = str.match( reg );
   if( result == null )
   {
    return false;
   }
   return true;
 }

 // 输入控制
 // 调用样例: <input onKeyPress="inputContrl('digit')" name ="userName" >
 function inputContrl(InputMod){
  // InputMod可以组合输入:"chinese,letter,digit"
  if(InputMod==""||InputMod==null) event.returnValue=false;
  InputMod=InputMod.toLowerCase();
  var gFlag = false;

  // 只能是数字
  if(InputMod.indexOf("digit")!=-1&&gFlag==false)
   if(event.keyCode>=48&&event.keyCode<=57) gFlag=true;

  // 只能是中文
  if(InputMod.indexOf("chinese")!=-1&&gFlag==false)
   if(event.keyCode>=256) gFlag=true;

  // 只能是字母
  if(InputMod.indexOf("letter")!=-1&&gFlag==false)
   if((event.keyCode>=65&&event.keyCode<=90)||(event.keyCode>=97&&event.keyCode<=122))
    gFlag=true;

  // 只能是金额数(数字和小数点)
  if(InputMod.indexOf("money")!=-1&&gFlag==false)
   if (event.keyCode<=57 && event.keyCode>=48 || event.keyCode==46 || event.keyCode == 44)
    gFlag=true;

  // 只能是指定的符号
  if(InputMod.indexOf("symbol")!=-1&&gFlag==false){
   alert("running here");
   if(event.keyCode=='_' || event.keyCode=='-')
    gFlag=true;
  }
  event.returnValue = gFlag;
 }

 // 检查字符串中是否有中文
 function check_chinese(str) {
  for(var i=0;i<str.length;i++){
   var c=str.charCodeAt(i);
   if(c > 0x4E00 && c < 0X9FA5){
    alert("用户名中包含有中文:["+str.charAt(i)+"]");
    return false;
   }
  }
  return true;
 }

    //检验字符串是不是金额数
    function check_money(str){
        var re = /^(\d+|[1-9])\.{0,1}\d{0,2}$/;
        if (!re.test(str)){
            alert("输入的金额数有误! 示例:123或123.45");
            return false;
        }
        return true;
    }

================2006年2月27日 增加======================

//选中的select 选项从名字为srcSelect的下拉列表移动到名字为desSelect的下拉列表中。

function moveOption(srcSelect,desSelect){
 srcLen = srcSelect.options.length;
 desLen = desSelect.options.length;
 for (i=0;i<srcLen;i++){
  optionObj = srcSelect.options[i];
  if (optionObj.selected){
   text = optionObj.text;
   value = optionObj.value;
   desSelect.options[desLen++] = new Option(text,value);
  }
 }
 for (i=srcLen-1;i>=0;i--){
  optionObj = srcSelect.options[i];
  if (optionObj.selected){
   optionObj.selected = false;
   srcSelect.options[i] = null;
  }
 }
}

//select 选项的上下移动(obj 为select的id, index:-1表示上移;1表示下移)
function changepos(obj,index)
{
 if(index==-1){
  if (obj.selectedIndex>0){
   obj.options(obj.selectedIndex).swapNode(obj.options(obj.selectedIndex-1))
  }
 }
 else if(index==1){
  if (obj.selectedIndex<obj.options.length-1) {
   obj.options(obj.selectedIndex).swapNode(obj.options(obj.selectedIndex+1))
  }
 }
}

时间: 2024-10-26 16:43:50

几个好用的JS函数的相关文章

javascript 调用js:javascript中iframe里面的页面调用父窗口js函数的方法

实现iframe内部页面直接调用该iframe所属父窗口自定义函数的方法.比如有A窗口,A内有个IFRAME. B,B里面的装载的是C页面,这时C要直接调用A里面的一个自定义函数ExpandPage();那么只要在C页面中写如下JS函数就可以了:window.parent.ExpandPage();如果ExpandPage()有参数也可以直接传递合适的参数进去. 本文链接http://www.cxybl.com/html/wyzz/JavaScript_Ajax/20130131/36765.h

一个解析URL及图片地址的JS函数

js|函数 为BBS增加的解析函数,不知道有没有更好的方法,没看其它BBS的JS代码: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML><HEAD><TITLE>BBS </TITLE><META NAME="Generator" CONTENT="EditPlus"><META N

JS函数集合大全

js|函数|集合 1.document.write(""); 输出语句2.JS中的注释为//3.传统的HTML文档顺序是:document->html->(head,body)4.一个浏览器窗口中的DOM顺序是:window->(navigator,screen,history,location,document)5.得到表单中元素的名称和值:document.getElementById("表单中元素的ID号").name(或value)6.一个

在客户端设置cooke和获取cooke的JS函数

js|函数|客户端 <script language="javascript">function setCookie(name, value, expires, path, domain, secure) {  var today = new Date();  var expiry = new Date(today.getTime() + 7 * 24 * 60 * 60 * 1000);  if(expires==''||expires==null)  { expires

iframe里面的页面调用父窗口,左右窗口js函数的方法

iframe里面的页面调用父窗口,左右窗口js函数的方法 实现iframe内部页面直接调用该iframe所属父窗口自定义函数的方法. 比如有A窗口,A内有个IFRAME B,B里面的装载的是C页面,这时C要直接调用A里面的一个自定义函数AFUN(); 那么只要在C页面中写如下JS函数就可以了: window.parent.AFUN(); 如果AFUN()有参数也可以直接传递合适的参数进去. 例如: 修改父窗口控件属性 window.parent.document.getElementById('

javascript中iframe里面的页面调用父窗口js函数的方法

实现iframe内部页面直接调用该iframe所属父窗口自定义函数的方法. 比如有A窗口,A内有个IFRAME. B,B里面的装载的是C页面,这时C要直接调用A里面的一个自定义函数ExpandPage(); 那么只要在C页面中写如下JS函数就可以了: window.parent.ExpandPage(); 如果ExpandPage()有参数也可以直接传递合适的参数进去.

js函数排序的实例代码

这篇文章介绍了js函数排序的代码,有需要的朋友可以参考一下   复制代码 代码如下: var as = [1,2,11,3434,3,4545,33,55,0]; as.sort(); //这个排序是按照字典排序 //自定义按照数字排序 function sortByNum(a,b){ return parseInt(a) - parseInt(b); } as.sort(sortByNum); //按照对象来排序 //定义一个person对象 function Person(name.age)

js函数setTimeout延迟执行的简单介绍

设置指定的JS函数在指定的时间后执行,可以利用setTimeout()函数.   setTimeout() 方法用于在指定的毫秒数后调用函数或计算表达式. 语法: setTimeout(code,millisec) 参数: code (必需):要调用的函数后要执行的 JavaScript 代码串. millisec(必需):在执行代码前需等待的毫秒数. 提示: setTimeout() 只执行 code 一次.如果要多次调用,请使用 setInterval() 或者让 code 自身再次调用 s

解析页面加载与js函数的执行

 这篇文章主要介绍了页面加载与js函数的执行 onload or ready 需要的朋友可以过来参考下,希望对大家有所帮助 首先,页面加载顺序: 解析HTML结构. 加载外部脚本和样式表文件. 解析并执行脚本代码. 构造HTML DOM模型. 加载图片等外部文件. 页面加载完毕.   也就是: html → head → title → #text(网页标题) → style → 加载样式 → 解析样式 → link → 加载外部样式表文件 → 解析外部样式表 → script → 加载外部脚本