代码分析第一篇

<%@ page language="java" pageEncoding="UTF-8"%>
<%@ taglib uri="/WEB-INF/c.tld" prefix="c"%>
<head>
 <title>新增用户</title>
 <meta http-equiv="x-ua-compatible" content="ie=8">
 <link rel="stylesheet" href="../css/zTreeStyle3.2/zTreeStyle.css" type="text/css"/>
 <link rel="stylesheet" href="../css/demo3.2.css" type="text/css">
 <link href="../css/system/main.css" type="text/css" rel="stylesheet" />
 <script type="text/javascript" src="../js/jquery.js"></script>
 <script type="text/javascript" src="../js/ztree3.2/jquery.ztree.core-3.2.js"></script>
 <script type="text/javascript" src="../js/ztree3.2/jquery.ztree.excheck-3.2.js"></script>
 <script type="text/javascript" src="../js/check_char.js"></script>
 <script>  
  var zNodes ;
  var setting = {
   check: {
    enable: true,
    chkStyle: "radio",
    radioType: "all"
   },
   view: {
    dblClickExpand: false
   },
   data: {
    simpleData: {
     enable: true
    }
   },
   callback: {
    onCheck: onCheck
   }
  };

        var setting2 = {
   check: {
    enable: true,
    chkboxType: {"Y":"s", "N":"ps"}
   },
   view: {
    dblClickExpand: false
   },
   data: {
    simpleData: {
     enable: true
    }
   },
   callback: {
    onCheck: onCheck2
   }
  };
  
  function onCheck(e, treeId, treeNode) {
      if("treeDemo"==treeId){
                var zTree = $.fn.zTree.getZTreeObj("treeDemo"),
                nodes = zTree.getCheckedNodes(true),
                v = nodes[0].name;
                m = nodes[0].id;
                var cityObj = $("#checkOrg");
                cityObj.attr("value", v); 
                var orgId = $("#orgId");
                orgId.attr("value", m);
                var orgName = $("#orgName");
                orgName.attr("value", v);
               
                selectRole();
             }
  }

        function onCheck2(e, treeId, treeNode) {

            var zTree = $.fn.zTree.getZTreeObj("treeDemo"),
   nodes = zTree.getCheckedNodes(true),
   v = "";
   m="";
   for (var i=0, l=nodes.length; i<l; i++) {
    v += nodes[i].name + ",";
    m += nodes[i].id + ",";
   }
   if (v.length > 0 ) v = v.substring(0, v.length-1);
   if (m.length > 0 ) m = m.substring(0, m.length-1);
   var cityObj = $("#checkOrg_"+roleId);
   cityObj.attr("value", v); 
   var limitOrgIds = $("#limitOrgId_"+roleId);
   limitOrgIds.attr("value", m);
   
  }

  function showMenu() {
  $.ajax({
        type:"post",
        url:"../system/getOrgList.do",
        async:false,
        contentType : "application/json",
     dataType : "json",
        success:function(data){
          zNodes=eval("("+data+")");
          $.fn.zTree.init($("#treeDemo"), setting, zNodes.datas);
        },
        error:function(){
          alert("Ajax请求数据失败!");
        }
     });
    
   var cityObj = $("#checkOrg");
   var cityOffset = $("#checkOrg").offset();
   $("#menuContent").css({left:cityOffset.left + "px", top:cityOffset.top + cityObj.outerHeight() + "px"}).slideDown("fast");

   $("body").bind("mousedown", onBodyDown);
  }

        var roleId = null;
        function showMenu2(rid) {
            roleId = rid;
            if ($("#checkOrg_"+roleId).attr("disabled")) {
                return;
            }

            $.ajax({
                  type:"post",
                  url:"getOrgList.do",
                  async:false,
                  contentType : "application/json",
                  dataType : "json",
                  success:function(data){
                   zNodes=eval("("+data+")");
                    $.fn.zTree.init($("#treeDemo"), setting2, zNodes.datas);
                    var limitOrgIds = $("#limitOrgId_"+roleId).val();
                    if (limitOrgIds!=""){
                        var ids = limitOrgIds.split(",");
                        var zTree = $.fn.zTree.getZTreeObj("treeDemo");
                        var nodes = zTree.getNodes();
                        for (var i = 0, n = ids.length; i < n; i++) {
                            for(var vi in nodes) {
                                var node = nodes[vi];
                                if (node.id==ids[i]) {
                                    zTree.checkNode(node, true, true);
                                    break;
                                }
                               
                            }
                        }
                       
                    }
                  },
                  error:function(){
                    alert("Ajax请求数据失败!");
                  }
               });
    
   var cityObj = $("#checkOrg_"+roleId);
   var cityOffset = cityObj.offset();
   $("#menuContent").css({left:cityOffset.left + "px", top:cityOffset.top + cityObj.outerHeight() + "px"}).slideDown("fast");

   $("body").bind("mousedown", onBodyDown);
  }

  function hideMenu() {
   $("#menuContent").fadeOut("fast");
   $("body").unbind("mousedown", onBodyDown);
  }
  function onBodyDown(event) {
   if (!(event.target.id == "menuBtn" || event.target.id == "citySel" || event.target.id == "menuContent" || $(event.target).parents("#menuContent").length>0)) {
    hideMenu();
   }
  }

        function selectRole(){
            var orgId = $("#orgId").val();
            var lineCode = $("input[name='lineCode']:checked").val();
            if (orgId == "") {
                return;
            }

            $.ajax({
                  type:"post",
                  url:"getUserRoleList.do",
                  data:{orgId:orgId, lineCode:lineCode},
                  success:function(data){
                    var d = eval('('+data+')');
                    var v = d.v;
                   
                    var html = '<table width="100%">';
                    for (var i = 0, n = v.length; i < n; i++) {
                        html += '<tr><td width="150px"><input type="checkbox" name="roleId" value="'+v[i].roleId+'">'+v[i].roleName+'</td><td><input id="checkOrg_'+v[i].roleId+'" name="checkOrg_'+v[i].roleId+'" type="text" readonly disabled class="form_input1" /><input type="hidden" name="limitOrgId_'+v[i].roleId+'" id="limitOrgId_'+v[i].roleId+'"><a href="#" οnclick="showMenu2('+v[i].roleId+');return false;">数据权限</a></td></tr>';
                    }
                    html += '</table>';
                   
                    $("#roleselect #rolecontent").html(html);
                    if(i>13){
                        $('#rolecontent').height('300px');
                    }else{
                     $('#rolecontent').height((i*22)+'px');
                    }
                    $("input[name]='roleId'").click(function() {
                        var v = this.value;

                        $("#checkOrg_"+v).attr("disabled", !this.checked);

                    });

                  },
                  error:function(){
                    alert("无法获取角色信息!");
                  }
               });     
        }
 

  $(document).ready(function(){

            var lineCode = $("input[name='lineCode']").click(function() {
                selectRole();
            }).filter(':checked').val();
           
            $("#rolecontent").css({margin:'10px 0 10px 5px'});
         
           
  });
  
  function validateName(){
  var loginName = $("#loginName").val();
  if(loginName!=''){
    $.ajax({
        type:"post",
        url:"validateLoginName.do",
        data:{loginName:loginName},
     dataType : "text",
        success:function(data){
         alert(data);
        },
        error:function(){
          alert("Ajax请求数据失败!");
        }
     });
  }
  }
  
/*--------------------------------------------------------------------- 
           表单校验开始
 ---------------------------------------------------------------------- */ 
function checkForm(thisform){
  if(!submitclean(thisform))
  return false;
  if(!CheckInputValue('用户名',thisform.userName,false,'String',0,15))
  return false;
  if(!CheckInputValue('登陆名',thisform.loginName,false,'String',0,30))
  return false;
  //if(!CheckInputValue('密码',thisform.userPass,false,'String',0,20))
  //return false;
  //if(!CheckInputValue('确认密码',thisform.userPass2,false,'String',0,20))
  //return false;
  if(!CheckInputValue('手机号码',thisform.mobileCode,false,'Telephone',10,11))
  return false;
  if(!CheckInputValue('确认手机号码',thisform.mobileCodeConfirm,false,'Telephone',10,11))
    return false;
  //if(thisform.userPass.value!=thisform.userPass2.value){
   //alert("两次密码不一致!请重新输入");
   //thisform.userPass.value="";
   //thisform.userPass2.value="";
   //return false;
  //}
  if(thisform.mobileCode.value!=thisform.mobileCodeConfirm.value){
   alert("两次手机号码不一致!请重新输入");
   thisform.mobileCode.value="";
   thisform.mobileCodeConfirm.value="";
   return false;
  }
  /*
   lineCode="";  
   $("[name='lineCode']:checked").each(function(){
          lineCode+=$(this).val();
       })
     if(lineCode==""){
      alert("请选择业务线!");
      return false;
     }*/
          
       var roleOrg=$("#orgId").val();
       if($.trim(roleOrg)==""){
       alert("请选择机构!");
        $("#checkOrg").focus();
        return false;
     }

    var rev = false;
    $("input[name]='roleId':checked").each(function() {
        var v = this.value;
        if ($("#limitOrgId_"+v).val()==""){
            alert("请选择数据权限!");
            $("#checkOrg_"+v).focus();
            rev = true;
            return false;
        }
    });
    if (rev) return false;
    return true;


/*--------------------------------------------------------------------- 
            页面保存开始
 ---------------------------------------------------------------------- */
 
 function doSave(){
  if(!checkForm(document.getElementById("userForm"))){
    return;
  }
 $("#userForm").submit();
 } 
 function fanhui(){
  window.location="userList.do";
 }
/*--------------------------------------------------------------------- 
                       页面保存结束
 ---------------------------------------------------------------------- */
  function selectStatus(){
   var a=$('#status').val(); 
   if(a=='F'){
      $("#frozenTimeView").show();
   }else{
      $("#frozenTimeView").hide();
   }
  }  
</script>
</head>
<body>
<div class="all_box">
<form id="userForm" name="userForm" action="saveUser.do" method="post">
<div class="user_add_box" style="display:block">
 <table class="index_table">
       <thead><tr><td colspan="2" class="top_head"><span class="key_zb align_left">新增用户</span></td></tr></thead>
           <tbody>
             <tr class="tr_special">
               <td class="td_width border-right"><span class="p_left">用户名称:
     <input type="text" name="userName" id="userName" class="search_input"  maxlength="16"/><font color="red">*</font></span>
      </td>
      <td class="td_width border-right"><span class="p_left">登陆名:&nbsp;&nbsp;&nbsp;&nbsp;
     <input type="text" name="loginName" id="loginName" class="search_input" οnblur="validateName()" maxlength="30"/><font color="red">*</font></span>
      </td>
    </tr>
   <tr class="tr_special" style="display: none">
               <td class="td_width border-right"><span class="p_left">用户密码:
     <input type="password" name="userPass" id="userPass" class="search_input"/><font color="red">*</font></span>
      </td>
      <td class="td_width border-right"><span class="p_left">确认密码:&nbsp;&nbsp;
     <input type="password" id="userPass2" class="search_input" /><font color="red">*</font></span>
      </td>
    </tr>
   
             <tr class="tr_special">
             <!--   <td class="td_width border-right"><span class="p_left">业务线&nbsp;&nbsp;:
      <c:forEach var="busi" items="${busiList}" varStatus="st">
      <input name="lineCode" id="lineCode" type="radio" value="${busi.lineCode}" />  ${busi.lineName}
       </c:forEach><font color="red">*</font></span>
      </td>  -->
      <td class="td_width border-right"><span class="p_left"> 选择机构:
          <input id="checkOrg" type="text" readonly value="" class="search_input" οnclick="showMenu();" /><font color="red">*</font>
                <input type="hidden" name="orgId" id="orgId" >
       <input type="hidden" name="orgName" id="orgName" ></span>
      </td>
     </tr>
    
             <tr class="tr_special">
               <td class="td_width border-right"><span class="p_left">手机号码:
     <input type="password" name="mobileCode" id="mobileCode" class="search_input" /><font color="red">*</font></span>
      </td>
               <td class="td_width border-right"><span class="p_left">确认手机号码:
     <input type="password" name="mobileCodeConfirm" id="mobileCodeConfirm" class="search_input" /><font color="red">*</font></span>
      </td>
             </tr>
               
     <tr class="tr_special">
               <td class="td_width border-right"><span class="p_left">状&nbsp;&nbsp;&nbsp;&nbsp;态:
                   <select class="select_style" name="status" id="status" onChange="selectStatus();">
      <option value="V">有效</option>
      <option value="F">冻结</option>
      <option value="I">失效</option>
     </select><font color="red">*</font> </span>
    </td><!--
    <td class="td_width border-right"><span class="p_left"> 是否管理层:
     <select class="select_style" name="isLeader" id="isLeader" >
      <option value="Y">是</option>
      <option value="N">否</option>
     </select><font color="red">*</font></span> 
    </td> -->
    </tr>
    <tr ID="roleselect">
                            <td colspan="2">选择角色:
                            <DIV id="rolecontent" style="overflow: auto;width: 98%">      
                            </DIV>
                            </td>
                        </tr>
   <tr class="tr_special">
    <td colspan="2" class="td_width border-right"><span class="p_left">    
     <input type="button" value="保  存" class="btn1" οnclick="doSave();"/>
        <input type="button" value="返  回" class="btn1" οnclick="javascript:window.history.back(-1)"/></span>
    </td>
   </tr>
  </tbody>
   </table>
   </div>
 </form>
 <div id="menuContent" class="menuContent" style="display:none; position: absolute;">
 <ul id="treeDemo" class="ztree" style="margin-top:0; width:163px; height: 300px;"></ul>
</div>     
</div>     

</body>
</html>

 

 

/***********************************
* JSP页面输入有效性校验
* create date: 2006-08-19
* update date: 2006-08-19
* update content: 此文件在原先使用文件checkvalue.jsp基础上,结合原先的使用经验做了如下改进
*   1 增加函数CheckSpecChar(FormName),直接校验整个form的所有输入控件是否包含非法字符。
*   2 函数CheckInputValue原先传入参数输入框内容,改为输入框对象名称,这样一旦校验不通过,光标可以定位到对象。
*   3 优化日期校验,原先对日期格式只校验输入字符,没有校验长度以及yyyy-mm-dd格式中年月日各自是否满足要求。
*   4 优化Email格式校验
*  5 原先输入框允许为空,同时如果输入内容有最短长度限制时候,无法校验,现已修改,能够支持。
*
*   增加系数Rate类型,不能大于1
*   增加时间Time类型,24h:mi格式
*********************************/
//提交表单时清理所有的非隐藏表单元素值的左右空格并校验是否含有非法字符
function submitclean(FormName){
 var str = "'<>\""; //非法字符集
 for (var index = 0; index < FormName.elements.length; index++) {
  if(FormName.elements[index].type != "hidden"){
   //去除左右空格
         FormName.elements[index].value = FormName.elements[index].value.replace(/^\s+|\s+$/g,"");         
         for(i = 0; i < FormName.elements[index].value.length; i++){
     if (str.indexOf(FormName.elements[index].value.substring(i,i + 1)) >= 0){
      alert("输入的内容不能含有非法字符:" + str);
      FormName.elements[index].focus();
      return false;
              }
   }
        }
 }
 return true;
}
//该函数用于带查询条件的显示页面,页面加载时判断哪个form元素应该默认获得焦点
function formFocus(FormName){
 var isfocus =false;
 for (var index = 0; index < FormName.elements.length; index++) {
  if(FormName.elements[index].className=='lc') continue;
  if(FormName.elements[index].tagName=='INPUT'
   || FormName.elements[index].tagName=='SELECT'
   || FormName.elements[index].tagName=='TEXTAREA')
   {
   if(FormName.elements[index].type != "hidden" && FormName.elements[index].value!=""){
 
          FormName.elements[index].focus();         
          isfocus =true;
          break;
         }
        }
 }
 if(!isfocus){
  for (var index = 0; index < FormName.elements.length; index++) {
   if(FormName.elements[index].className=='lc') continue;
   if(FormName.elements[index].tagName=='INPUT'
    || FormName.elements[index].tagName=='SELECT'
    || FormName.elements[index].tagName=='TEXTAREA')
    {
    if(FormName.elements[index].type != "hidden"){
  
           FormName.elements[index].focus();         
           break;
          }
         }
  }
 
 }
}

//清除文本框字符串的前后所有空格
String.prototype.trim   =   function() //removes the Left side  and the right side blank space
    {  
          return   this.replace(/(^\s*)|(\s*$)/g,   "")  
   }

//文本框获得焦点后,如果文本框不为空,则将焦点放置在字符串之后
function cc()  //generater after onfocus()
 {
  var e = event.srcElement;
  var r =e.createTextRange();
  r.moveStart("character",e.value.length);
  r.collapse(true);
  r.select();
 }

//判断Form中所有对象的值中是否有特殊字符
 function CheckSpecChar(FormName){
 //传入参数为form的名称
 bString = "'<>^$"; //非法字符集
 for (var ObjID=0; ObjID < FormName.elements.length; ObjID++) {
  for(i = 0; i < FormName.elements[ObjID].value.length; i ++){
   if (bString.indexOf(FormName.elements[ObjID].value.substring(i,i+1)) >= 0){
    alert('输入的内容不能包含非法字符:' + bString);
    FormName.elements[ObjID].focus();
    return false;
            }
  }
 }
 return true;
}

function CheckSpecCharElement(strElement){
  //传入参数为Element
  bString = "'<>^/$-\\"; //非法字符集
   for(i = 0; i < strElement.value.length; i ++){
    if (bString.indexOf(strElement.value.substring(i,i+1)) >= 0){
     alert('输入的内容不能包含非法字符:' + bString);
     strElement.focus();
     return false;
             }
   }
  
  return true;
 }

//校验不合格后,光标自动定位到不符合格式要求的控件中
function CheckInputValue(input_desc,//输入框内容的中文名称
                         ObjName ,//输入框对象名称
                          is_empty,//false-不可以为空;true-可以为空
                          input_type,//输入框内容类型
                          input_minlength,//输入框内容的最小长度
                          input_maxlength//输入框内容的最长长度
                          ){
 //不能为空
 if(!is_empty && CheckIsNull(ObjName.value)){
  alert(input_desc + "不能为空!");
   ObjName.value="";//输入空格后,将空格清除!
   if(!ObjName.disabled)
      ObjName.focus();
      return false;
 }
  if(is_empty && CheckIsNull(ObjName.value)){
      return true;
 }
  //输入框内容的最小长度限制,并且输入框不为空,(剔除输入框为空的情况)
   if(input_minlength != 0 && ObjName.value.length < input_minlength && ObjName.value.length > 0){
      alert(input_desc + "长度不能低于" + input_minlength + "个字符!");
     if(!ObjName.disabled)
  ObjName.focus();
      return false;
 }

   if(input_maxlength != 0 && ObjName.value.length > input_maxlength ){
      alert(input_desc + "长度不能超过" + input_maxlength + "个字符!");
     if(!ObjName.disabled)
  ObjName.focus();
      return false;
        }

 /***************
 * 统一调用函数CheckSpecChar(FormName),整个form一次检查
        * ***************/
 /*
    if(input_type == "String"){
      if(!CheckString(ObjName.value)){
         alert(input_desc + "不能包含<、>、'、\"、/、\\");
                        ObjName.focus();
         return false;
      }
   }*/
  if(input_type == "StringNoError"){
      if(!CheckStringNoError(ObjName.value)){
         alert(input_desc + "不能包含<、>、'、\"、/、\\");
                 if(!ObjName.disabled)
                        ObjName.focus();
         return false;
      }
   }

 if(input_type == "StringNoSpace"){
      if(!CheckStringNoSpace(ObjName.value)){
         alert(input_desc + "不能包含空格!");
        if(!ObjName.disabled)
   ObjName.focus();
         return false;
      }
   }

 if(input_type == "StringNo6up"){
      if(!CheckStringNo6up(ObjName.value)){
         alert(input_desc + "不能包含\^!");
        if(!ObjName.disabled) 
   ObjName.focus();
         return false;
      }
   }

 if(input_type == "StringNofg"){
      if(!CheckStringNofg(ObjName.value)){
         alert(input_desc + "不能包含※!");
        if(!ObjName.disabled)
   ObjName.focus();
         return false;
      }
   }

 if(input_type == "StringNoPercent"){
      if(!CheckStringNoPercent(ObjName.value)){
         alert(input_desc + "不能包含%!");
        if(!ObjName.disabled)
   ObjName.focus();
         return false;
  }
 }

 if(input_type == "StringNoSpacePercent"){
  if(!CheckStringNoSpacePercent(ObjName.value)){
   alert(input_desc + "不能包含空格和%!");
      if(!ObjName.disabled)
   ObjName.focus();
         return false;
  }
 }

 if(input_type == "Number"){
  if(!CheckNumber(ObjName.value)){
   alert(input_desc + "是数字,只能全部由数字组成!");
      if(!ObjName.disabled)
   ObjName.focus();
   return false;
  }
 }
 
 if(input_type == "Number24"){
  if(!CheckNumber24(ObjName.value)){
   alert(input_desc + ",只能在1-24之间!");
   if(!ObjName.disabled)
   ObjName.focus();
   return false;
  }
 }

 if(input_type == "Telephone"){
  if(!CheckTelephone(ObjName.value)){
   //alert(input_desc + "是电话号码数字、-组成!");
   alert(input_desc + "只能由数字、-组成!");
   if(!ObjName.disabled)
   ObjName.focus();
         return false;
  }
 }

 if(input_type == "Money"){
  if(!CheckMoney(ObjName.value)){
   alert(input_desc + "是金额,由数字、.组成!");
   if(!ObjName.disabled)
   ObjName.focus();
   return false;
  }
 }
 if(input_type == "Rate"){
  if(!CheckRate(ObjName.value)){
   alert(input_desc + "是系数,不能大于1!");
   if(!ObjName.disabled)
   ObjName.focus();
   return false;
  }
 }
 if(input_type == "Time"){
  if(!CheckTime(ObjName.value)){
   alert(input_desc + "是时间,格式如下24h:mi!");
   if(!ObjName.disabled)
   ObjName.focus();
   return false;
  }
 }
 if(input_type == "Time2"){
  if(!CheckTime2(ObjName.value)){
   alert(input_desc + "是时间,格式如下24h:mi:ss!");
   if(!ObjName.disabled)
   ObjName.focus();
   return false;
  }
 }
 if(input_type == "Date"){
  if(!CheckDate(ObjName,input_desc)){
   return false;
  }
 }
 if(input_type == "Month"){
  if(!CheckMonth(ObjName.value)){
   alert(input_desc + "是月份,格式如下yyyy-MM!");
   if(!ObjName.disabled)
   ObjName.focus();
   return false;
  }
 }
 if(input_type == "Email"){
  if(!CheckEmail(ObjName.value)){
   alert(input_desc + "是Email,必须符合格式要求!");
   if(!ObjName.disabled)
   ObjName.focus();
   return false;
  }
 }

 if(input_type == "Password"){
  if(!CheckPassword(ObjName.value)){
   alert(input_desc + "只能包含数字和字母!");
   if(!ObjName.disabled)
   ObjName.focus();
   return false;
  }
 }
 if(input_type == "PasswordAndChar"){
  if(!CheckPasswordAndChar(ObjName.value)){
   alert(input_desc + "只能包含数字、字母和正斜线!");
   if(!ObjName.disabled)
   ObjName.focus();
   return false;
  }
 }
 

 if(input_type == "Letter"){
 
        if(!CheckLetter(ObjName.value)){
          alert(input_desc + "必须是字母!");
         if(!ObjName.disabled)
   ObjName.focus();
          return false;
        }
 }

 if(input_type == "UpLetter"){
         if(!CheckUpLetter(ObjName.value)){
            alert(input_desc + "必须是大写字母!");
           if(!ObjName.disabled)
   ObjName.focus();
            return false;
         }
   }
   if(input_type == "isUppercase"){// 只判断字符中的字母
    if(!CheckIsUpCase(ObjName.value)){
         alert(input_desc + "必须是大写字母!") ;
         if(!ObjName.disabled)
    ObjName.focus();
   return false; 
       }
   }

   if(input_type == "LowLetter"){
           if(!CheckLowLetter(ObjName.value)){
              alert(input_desc + "必须是小写字母!");
            if(!ObjName.disabled)
   ObjName.focus();
              return false;
           }
   }

 if(input_type == "Chinese"){
        if(!CheckChinese(ObjName.value)){
          alert(input_desc + "必须是全部为中文!");
         if(!ObjName.disabled)
   ObjName.focus();
          return false;
        }
 }
 if(input_type == "NoChinese"){
        if(!CheckNoChinese(ObjName.value)){
          alert(input_desc + "不能包含中文!");
         if(!ObjName.disabled)
   ObjName.focus();
          return false;
        }
 }
  return true;
}

//输入验证,错误信息返回字符串
function CheckInputValueMessage(input_desc,//输入框内容的中文名称
                         ObjName ,//输入框对象名称
                          is_empty,//false-不可以为空;true-可以为空
                          input_type,//输入框内容类型
                          input_minlength,//输入框内容的最小长度
                          input_maxlength//输入框内容的最长长度
                          ){  
                         
    var message = '';                     
 
 //不能为空
 if(!is_empty && CheckIsNull(ObjName.value)){
  message = input_desc + "不能为空!";
   ObjName.value="";//liuchuang补充于20080619:输入空格后,将空格清除!
   if(!ObjName.disabled)
      ObjName.focus();
 }
  if(is_empty && CheckIsNull(ObjName.value)){
      return message;
 }

  //输入框内容的最小长度限制,并且输入框不为空,(剔除输入框为空的情况)
   if(input_minlength != 0 && ObjName.value.length < input_minlength && ObjName.value.length > 0){
     message = input_desc + "长度不能低于" + input_minlength + "个字符!";
     if(!ObjName.disabled)
  ObjName.focus();
 }

   if(input_maxlength != 0 && ObjName.value.length > input_maxlength ){
     message = input_desc + "长度不能超过" + input_maxlength + "个字符!";
     if(!ObjName.disabled)
  ObjName.focus();
        }

 /***************
 * 统一调用函数CheckSpecChar(FormName),整个form一次检查
        * ***************/
 /*
    if(input_type == "String"){
      if(!CheckString(ObjName.value)){
         alert(input_desc + "不能包含<、>、'、\"、/、\\");
                        ObjName.focus();
         return false;
      }
   }*/
  if(input_type == "StringNoError"){
      if(!CheckStringNoError(ObjName.value)){
         message = input_desc + "不能包含<、>、'、\"、/、\\";
                 if(!ObjName.disabled)
                        ObjName.focus();
      }
   }

 if(input_type == "StringNoSpace"){
      if(!CheckStringNoSpace(ObjName.value)){
         message = input_desc + "不能包含空格!";
        if(!ObjName.disabled)
   ObjName.focus();
      }
   }

 if(input_type == "StringNo6up"){
      if(!CheckStringNo6up(ObjName.value)){
         message = input_desc + "不能包含\^!";
        if(!ObjName.disabled) 
   ObjName.focus();
      }
   }

 if(input_type == "StringNofg"){
      if(!CheckStringNofg(ObjName.value)){
         message = input_desc + "不能包含※!";
        if(!ObjName.disabled)
   ObjName.focus();
      }
   }

 if(input_type == "StringNoPercent"){
      if(!CheckStringNoPercent(ObjName.value)){
         message = input_desc + "不能包含%!";
        if(!ObjName.disabled)
   ObjName.focus();
  }
 }

 if(input_type == "StringNoSpacePercent"){
  if(!CheckStringNoSpacePercent(ObjName.value)){
   message = input_desc + "不能包含空格和%!";
      if(!ObjName.disabled)
   ObjName.focus();
  }
 }

 if(input_type == "Number"){
  if(!CheckNumber(ObjName.value)){
   message = input_desc + "是数字,只能全部由数字组成!";
      if(!ObjName.disabled)
   ObjName.focus();
  }
 }
 
 if(input_type == "Number24"){
  if(!CheckNumber24(ObjName.value)){
   message = input_desc + ",只能在1-24之间!";
   if(!ObjName.disabled)
   ObjName.focus();
  }
 }

 if(input_type == "Telephone"){
  if(!CheckTelephone(ObjName.value)){
   //alert(input_desc + "是电话号码数字、-组成!");
   message = input_desc + "只能由数字、-组成!";
   if(!ObjName.disabled)
   ObjName.focus();
  }
 }

 if(input_type == "Money"){
  if(!CheckMoney(ObjName.value)){
   message = input_desc + "是金额,由数字、.组成!";
   if(!ObjName.disabled)
   ObjName.focus();
  }
 }
 if(input_type == "Rate"){
  if(!CheckRate(ObjName.value)){
   message = input_desc + "是系数,不能大于1!";
   if(!ObjName.disabled)
   ObjName.focus();
  }
 }
 if(input_type == "Time"){
  if(!CheckTime(ObjName.value)){
   message = input_desc + "是时间,格式如下24h:mi!";
   if(!ObjName.disabled)
   ObjName.focus();
  }
 }
 if(input_type == "Time2"){
  if(!CheckTime2(ObjName.value)){
   message = input_desc + "是时间,格式如下24h:mi:ss!";
   if(!ObjName.disabled)
   ObjName.focus();
  }
 }
 if(input_type == "Date"){
  if(!CheckDate(ObjName,input_desc)){
  }
 }
 if(input_type == "Month"){
  if(!CheckMonth(ObjName.value)){
   message = input_desc + "是月份,格式如下yyyy-MM!" ;
   if(!ObjName.disabled)
   ObjName.focus();
  }
 }
 if(input_type == "Email"){
  if(!CheckEmail(ObjName.value)){
   message = input_desc + "是Email,必须符合格式要求!" ;
   if(!ObjName.disabled)
   ObjName.focus();
  }
 }

 if(input_type == "Password"){
  if(!CheckPassword(ObjName.value)){
   message = input_desc + "只能包含数字和字母!" ;
   if(!ObjName.disabled)
   ObjName.focus();
  }
 }

 if(input_type == "Letter"){
        if(!CheckLetter(ObjName.value)){
          message = input_desc + "必须是字母!" ;
         if(!ObjName.disabled)
   ObjName.focus();
        }
 }

 if(input_type == "UpLetter"){
         if(!CheckUpLetter(ObjName.value)){
            message = input_desc + "必须是大写字母!" ;
           if(!ObjName.disabled)
   ObjName.focus();
         }
   }

   if(input_type == "LowLetter"){
           if(!CheckLowLetter(ObjName.value)){
              message = input_desc + "必须是小写字母!" ;
            if(!ObjName.disabled)
   ObjName.focus();
           }
   }

 if(input_type == "Chinese"){
        if(!CheckChinese(ObjName.value)){
          message = input_desc + "必须是全部为中文!" ;
         if(!ObjName.disabled)
   ObjName.focus();
        }
 }
 if(input_type == "NoChinese"){
        if(!CheckNoChinese(ObjName.value)){
          message = input_desc + "不能包含中文!" ;
         if(!ObjName.disabled)
   ObjName.focus();
        }
 }
  return message;
}
//判断控件中字符串是否为空
//By ChengWei 2007-12-12
function CheckIsNull(str) {
 if (str.Trim().length == 0) {
       return true;  //空值
 }
 return false; //不为空
}
//判断是否没有包含空格
function CheckStringNoSpace(str){
 var i;
   for (i = 0; i < str.length; i++){
      if (str.charAt(i) == " "){
         return false;
      }
   }
   return true;
}
//判断是否没有包含"/","\"
function CheckStringNoError(str){
 //传入参数为form的名称
 bString = "'<>\"\\/"; //非法字符集

        for(i = 0; i < str.length; i ++){
                if (bString.indexOf(str.substring(i,i+1)) >= 0){
                        return false;
                }
        }
 return true;
}
//判断是否没有包含%
function CheckStringNoPercent(str){
 var i;
 for (i = 0; i < str.length; i++){
  if (str.charAt(i) == "%"){
   return false;
  }
 }
 return true;
}

//判断是否没有包含\^
function CheckStringNo6up(str){
 var i;
 for (i = 0; i < str.length; i++){
  if (str.charAt(i) == "\^"){
   return false;
  }
 }
 return true;
}

//判断是否没有包含\*
function CheckStringNofg(str){
 var i;
 for (i = 0; i < str.length; i++){
  if (str.charAt(i) == "※"){
   return false;
  }
 }
 return true;
}

//判断是否没有空格和%
function CheckStringNoSpacePercent(str){
 var i;
 for (i = 0; i < str.length; i++){
      if (str.charAt(i) == " " || str.charAt(i) == "%"){
         return false;
  }
 }
 return true;
}
//检验是否为数字(整型)
function CheckNumber(str){
 var i;
 //alert(parseInt(str));
 for (i = 0; i < str.length; i++){
  if (str.charAt(i) < "0" || str.charAt(i) > "9"){
   return false;
  }
 }
 return true;
}

//检验24小时范围
function CheckNumber24(str){
 var i;
 //alert(parseInt(str));
 for (i = 0; i < str.length; i++){
  if (str.charAt(i) < "0" || str.charAt(i) > "9"){
   return false;
  }
 }
 if(parseInt(str)<1||parseInt(str)>24){
  return false;
 }
 return true;
}

//判断是否符合电话号码,Telephone,由数字和-组成
function CheckTelephone(str){
 var i
 for (i = 0; i < str.length; i++){
  if ((str.charAt(i) < "0" || str.charAt(i) > "9") && str.charAt(i) != "-"&& str.charAt(i) != "%"){
   return false;
  }
 }
 return true;
}
//检验是否为金额(浮点)
function CheckMoney(str){
 var i;
 for (i = 0; i < str.length; i++){
  if ((str.charAt(i) < "0" || str.charAt(i) > "9") && str.charAt(i) != "."){
   return false;
  }
 }
 return true;
}
//检验是否为系数,小于等于1
function CheckRate(str){
 var i;
 for (i = 0; i < str.length; i++){
  if ((str.charAt(i) < "0" || str.charAt(i) > "9") && str.charAt(i) != "."){
   return false;
  }
 }
 if (parseFloat(str) >1 ){
                return false;
        }
 return true;
}

//检验是否为时间,格式24h:mi
function CheckTime(str){
 var i;
 for (i = 0; i < str.length; i++){
  if ((str.charAt(i) < "0" || str.charAt(i) > "9") && str.charAt(i) != ":"){
   return false;
  }
 }
 if (str.length != 5)
  return false;
 if (str.substring(2,3) != ":" ) {
  return false;
 }
 ls_hour = str.substring(0,2);
 ls_min = str.substring(3,5);

 if (parseFloat(ls_hour) > 23  ){
  return false;
 }
 if (parseFloat(ls_min) > 59){
  return false;
 }
 return true;
}
//检验是否为时间,格式24h:mi:ss
function CheckTime2(str){
 var i;
 for (i = 0; i < str.length; i++){
  if ((str.charAt(i) < "0" || str.charAt(i) > "9") && str.charAt(i) != ":"){
   return false;
  }
 }
 if (str.length != 8)
  return false;
 if (str.substring(2,3) != ":" ) {
  return false;
 }
 if (str.substring(5,6) != ":" ) {
  return false;
 }
 ls_hour = str.substring(0,2);
 ls_min = str.substring(3,5);
 ls_ss = str.substring(6,8);

 if (parseFloat(ls_hour) > 23  ){
  return false;
 }
 if (parseFloat(ls_min) > 59){
  return false;
 }
 if (parseFloat(ls_ss) > 59){
  return false;
 }
 return true;
}
//检验是否为月份,格式yyyy-MM
function CheckMonth(str){
 var i;
 for (i = 0; i < str.length; i++){
  if ((str.charAt(i) < "0" || str.charAt(i) > "9") && str.charAt(i) != "-"){
   return false;
  }
 }
 if (str.length != 7)
  return false;
 if (str.substring(4,5) != "-" ) {
  return false;
 }
 ls_year = str.substring(0,4);
 ls_month = str.substring(5,7);

 if (parseFloat(ls_year) < 1900  ){
  return false;
 }
 if (parseFloat(ls_month) > 12){
  return false;
 }
 return true;
}

//判断控件中输入是否都为yyyy-mm-dd格式的日期,
function CheckDate(ObjName,ObjDesc) {

 var ln =  ObjName.value.length;
 //空值看作符合格式要求
 if (ln == 0 ) {
  return true;
 }
 if  (ln != 10) {
  alert( ObjDesc + "只能输入如下日期格式yyyy-mm-dd!");
  ObjName.focus();
  return false;
 }
 bString = "0123456789-";
 for(i = 0; i < ObjName.value.length; i ++){
  if (bString.indexOf(ObjName.value.substring(i,i+1)) == -1) {
   alert(ObjDesc + "日期格式只能输入数字和-!");
   ObjName.focus();
        return false;
                }
 }

 var ls_year, ls_date, ls_month;

 if (ObjName.value.substring(4,5) != "-" || ObjName.value.substring(7,8) != "-") {
  alert(ObjDesc + "只能输入如下日期格式yyyy-mm-dd!");
  ObjName.focus();
  return false;
 }
 ls_year = ObjName.value.substring(0,4);
 ls_month = ObjName.value.substring(5,7);
 ls_date = ObjName.value.substring(8,10);

 if (parseFloat(ls_year) > 2100 || parseFloat(ls_year) < 1900){
  alert( ObjDesc + "年份不对!");
  ObjName.focus();
  return false;
 }
 if (parseFloat(ls_month) > 12 || parseFloat(ls_year) < 1){
  alert(ObjDesc + "月份不对!");
  return false;
 }
 if (parseFloat(ls_date) > 31 || parseFloat(ls_date) < 1){
  alert(ObjDesc + "日期不对!");
  ObjName.focus();
  return false;
 }
 return true;
}
//判断是否符合Password格式,字母和数字组合
function CheckPassword(str){
 var i
   for (i = 0; i < str.length; i++){
      if ((str.charAt(i) < "0" || str.charAt(i) > "9") && (str.charAt(i) < "A" || str.charAt(i) > "Z") && (str.charAt(i) < "a" || str.charAt(i) > "z")){
         return false;
      }
   }
   return true;
}
//判断是否符合Password格式,字母和数字组合和正斜线组合
function CheckPasswordAndChar(str){
 var i
   for (i = 0; i < str.length; i++){
      if ((str.charAt(i) < "0" || str.charAt(i) > "9") && (str.charAt(i) < "A" || str.charAt(i) > "Z") && (str.charAt(i) < "a" || str.charAt(i) > "z") && (str.charAt(i) != '/')){
         return false;
      }
   }
   return true;
}
//判断是否都是字母
function CheckLetter(str){
 var i
   for (i = 0; i < str.length; i++){
      if ( (str.charAt(i) < "A" || str.charAt(i) > "Z") && (str.charAt(i) < "a" || str.charAt(i) > "z")){
         return false;
      }
   }
   return true;
}
//判断是否都是大写字母
function CheckUpLetter(str){
 var i
   for (i = 0; i < str.length; i++){
      if ( (str.charAt(i) < "A" || str.charAt(i) > "Z") ){
         return false;
      }
   }
   return true;
}
//判断是否都是大写字母(只包含字母)
function CheckIsUpCase(str){
  for (var i = 0; i < str.length; i++){
   if ( !(str.charAt(i) < "A" || str.charAt(i) > "Z") || !(str.charAt(i) < "a" || str.charAt(i) > "z")){    
    if ( (str.charAt(i) < "A" || str.charAt(i) > "Z") ){  
        return false;
       }
   }
  }
  return true;
}
//判断是否都是小写字母
function CheckLowLetter(str){
 var i
   for (i = 0; i < str.length; i++){
      if (  (str.charAt(i) < "a" || str.charAt(i) > "z")){
         return false;
      }
   }
   return true;
}

//判断是否为全部中文,当然在其他语言的系统中,如果是日文、韩文也可能,
function CheckChinese(str){
 var i ;
 for (var i=0;i<str.length;i++){
      if (parseInt(str.charCodeAt(i)) <= 256){
          return false;
      }
   }
   return true;
}
//判断是否没有中文
function CheckNoChinese(str){
 var i ;
 for (var i=0;i<str.length;i++){
      if (parseInt(str.charCodeAt(i)) > 256){
          return false;
      }
   }
   return true;
}

//判断是否符合Email的格式,包含@和. , @在.之前,
function CheckEmail(str){
 var index_i;
 var index_j;
   if(str.length > 0){
  index_i = str.lastIndexOf("@");

      if(( index_i < 1) ){
   return false;
      }
  index_j = str.indexOf(".", index_i);
  if(( index_j < 1) ){
   return false;
      }

   }
   return true;
}

//去空格函数
String.prototype.Trim = function() {
 return this.replace(/(^\s*)|(\s*$)/g, "");
}

String.prototype.LTrim = function() {
 return this.replace(/(^\s*)/g, "");
}

String.prototype.RTrim = function() {
 return this.replace(/(\s*$)/g, "");
}

//****************************************************************
// Description: str 为输入字符串,
// iType为类型,分别为0 - 去除前后空格; 1 - 去前导空格; 2 - 去尾部空格
//****************************************************************
function cTrim(str,iType){
 var sTmpStr = ' ';
 var i = -1;

 if(iType == 0 || iType == 1){
  while(sTmpStr == ' '){
   ++i;
   sTmpStr = str.substr(i,1);
  }
  str = str.substring(i);
 }

 if(iType == 0 || iType == 2){
  sTmpStr = ' ';
  i = str.length;
  while(sTmpStr == ' '){
   --i;
   sTmpStr = str.substr(i,1);
  }
  str = str.substring(0,i+1);
 }
 return str;
}

function isblank(s)
{
  var j=0;
  for(var i = 0;i < s.length;i++) {
    var c = s.charAt(i);
    if ((c != '') && (c != '\n') && (c != '\t') && (c != ' ')) return false;
    if (c == ' ')
    {
      j++;
    }
  }
  if (j == s.length)    //全部是空格
  {
   return true;
  }
  else
  {
    return false;
  }
}

function isvalid(s)
{
  var j=0;
  for(var i = 0;i < s.length;i++) {
    var c = s.charAt(i);
    if ((c == '<') || (c == '>') || (c == '\\') || (c == '/') || (c == '+') || (c == '\'')) return false;
  }
  return true;
}

function isNum(s)
{
  for(var i = 0;i < s.length;i++) {
    var v = parseFloat(s.charAt(i));
    if (isNaN(v)) return false;
  }
  return true;
}

//拼音,数字,|组成
function CheckInputStringExt1(inputDesc,obj,isEmpty,minLength,maxLength){
 var value = obj.value.Trim();
 var str = /^[a-zA-Z\d|]*?$/;
 if(!isEmpty && value.length > 0){
  alert(inputDesc + "不能为空!");
  obj.focus();
  return false;
 }
 if(!str.exec(value)){
  alert(inputDesc + "只能包含数字,字母和\"|\"!");
  obj.focus();
  return false;
 }
 if(value.length > maxLength){
  alert(inputDesc + "长度不能超过" + maxLength + "个字符!");
  obj.focus();
  return false;
 }
 return true;
}

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值