页面文本框等的验证

var valiHelpler = new ValidationHelper();// 验证帮助类
function isEmpty(str) {

	return (str.replace(/^\s+/, "") == null || str.replace(/^\s+/, "").length == 0);
}
function isNumber(v) {
	return (!isNaN(v) && !/^\s+$/.test(v));
}

// 删除左右两端的空格
function ltrim(str) {
	return str.replace(/(^\s*)|(\s*$)/g, "");
}

function isDigits(v) {
	return !/[^\d]/.test(v);
}
function isRegTime(v) {
	return !/[^\d\-,-,]/.test(v);
}
function isAlpha(v) {
	return /^([a-zA-z_]{1})([\w]*)+$/.test(v)
}

function isAlphaNumber(v) {
	return !/\W/.test(v)
}

function isDate(v) {
	var test = new Date(v);
	2007 - 7 - 4
	return !isNaN(test);
}

function isEmail(v) {
	if (v == "") {
		return true;
	}
	return /\w{1,}[@][\w\-]{1,}([.]([\w\-]{1,})){1,3}$/.test(v);
}
function isUrl(v) {
	return /^(http|https|ftp):\/\/(([A-Z0-9][A-Z0-9_-]*)(\.[A-Z0-9][A-Z0-9_-]*)+)(:(\d+))?\/?/i
			.test(v)
}

function isDateAu(v) {
	var regex = /^(\d{2})\/(\d{2})\/(\d{4})$/;
	if (!regex.test(v))
		return false;
	var d = new Date(v.replace(regex, '$2/$1/$3'));
	return (parseInt(RegExp.$2, 10) == (1 + d.getMonth()))
			&& (parseInt(RegExp.$1, 10) == d.getDate())
			&& (parseInt(RegExp.$3, 10) == d.getFullYear());
}

function isCurrencyDollar(v) {
	// [$]1[##][,###]+[.##]
	// [$]1###+[.##]
	// [$]0.##
	// [$].##
	return /^\$?\-?([1-9]{1}[0-9]{0,2}(\,[0-9]{3})*(\.[0-9]{0,2})?|[1-9]{1}\d*(\.[0-9]{0,2})?|0(\.[0-9]{0,2})?|(\.[0-9]{1,2})?)$/
			.test(v)
}

function eluEquals(v, elmId) {
	var p = $$(elmId);
	return v == p.value;
}

function isDateCn(v) { 
	var regex = /^(\d{4})-(\d{2})-(\d{2})$/;
	if (!regex.test(v))
		return false;
	var d = new Date(v.replace(regex, '$1/$2/$3'));
	return (parseInt(RegExp.$2, 10) == (1 + d.getMonth()))
			&& (parseInt(RegExp.$3, 10) == d.getDate())
			&& (parseInt(RegExp.$1, 10) == d.getFullYear());
}
function isInteger(v) {
	if(v == "")
		{
		  return true;
		}
	return (/^[-+]?[\d]+$/.test(v));
}

function isChinese(v) {
	if(v == "")
		{
		  return true;
		}
	return (/^[\u4e00-\u9fa5]+$/.test(v));
}

function isIp(v) {
	return (/^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/
			.test(v));
}

function isZip(v) {
	return (/^[0-9]\d{5}$/.test(v));
}

function isPhone(v) {
	if (v == "") {
		return true;
	}
	return /[0-9]{7,}$/.test(v);
}

function isMobilePhone(v) {
	if(v == "")
		{
		  return true;
		}
	return (/(^0?[1][35][0-9]{9}$)/.test(v));
}
function lengthMin(v, args) {
	return v.length >= parseInt(args[0]);
}
function lengthMax(v, args) {
	return v.length <= parseInt(args[0]);
}

function restrictLength(v, args) {
	if (isEmpty(v)) {
		return true;
	}
	return v.length == parseInt(args[0]);
}
function numberMax(v, args) {
	return parseFloat(v) <= parseFloat(args[0]);
}

function numberMin(v, args) {
	return parseFloat(v) >= parseFloat(args[0]);
}
var rulesSource = [['required', "isEmpty", "不能为空,请输入正确的数据", 1],
		['validate-number', "isNumber", "请填写整数", 1],
		['validate-regtime', "isRegTime", "请填写正确的时间范围", 1],
		['validate-alpha', "isAlpha", "请填写开头为字母", 1],
		['validate-digits', "isDigits", "数字格式错误,请输入数字", 1],
		['validate-date', "isDate", "日期格式错误", 1],
		['validate-email', "isEmail", "邮件格式错误", 1],
		['validate-url', "isUrl", "网址格式错误,请重新输入", 1],
		['validate-integer', "isInteger", "请输入整数", 1],
		['validate-chinese', "isChinese", "请输入中文信息", 1],
		['validate-ip', "isIp", "IP地址格式错误,请输入正确的IP地址", 1],
		['validate-zip', "isZip", "邮政编码格式错误,请输入正确的邮政编码", 1],
		['validate-phone', "isPhone", "电话号码格式错误,请输入正确的电话号码", 1],
		['validate-mobile-phone', "isMobilePhone", "手机号码格式错误,请输入正确的手机号码", 1],
		['length-min', "lengthMin", "长度不能小于%s", 2],
		['length-max', "lengthMax", "长度不能大于%s", 2],
		['length-restrict', "restrictLength", "长度必须是%s位", 2],
		['number-min', "numberMin", "数字不能小于%s", 2],
		['number-max', "numberMax", "数字不能大于%s", 2],
		['elu-equals', "eluEquals", "两次输入值不一致", 3]];
function ValidationHelper() {
	this.getRule = function(className) {
		var ruleNameResult = getRuleName(className);
		return rulesSource[ruleNameResult];
	}
	this.classNameToArray = function(className) {
		return className.split(' ');
	}
	this.getRuleType = function(className) {
		var ruleNameResult;

		for (var ruleName in rulesSource) {
			if (className.indexOf(rulesSource[ruleName][0]) >= 0) {
				ruleNameResult = rulesSource[ruleName][3]
				break;
			}
		}
		return ruleNameResult;
	}
	this.getRuleName = function(className) {
		var ruleNameResult;

		for (var ruleName in rulesSource) {
			if (className == rulesSource[ruleName][0]) {
				ruleNameResult = rulesSource[ruleName][1];
				break;
			}
			if (className != rulesSource[ruleName][0]
					&& className.indexOf(rulesSource[ruleName][0]) == 0) {
				ruleNameResult = new Array();
				ruleNameResult[0] = rulesSource[ruleName][1];
				ruleNameResult[1] = className.split(":")[1];
				break;
			}
		}
		return ruleNameResult;
	}
	this.getRuleErrorMessage = function(className) {
		var ruleNameResult;
		for (var ruleName in rulesSource) {
			if (className.indexOf(rulesSource[ruleName][0]) >= 0) {
				ruleNameResult = rulesSource[ruleName][2];
				break;
			}
		}
		return ruleNameResult;
	}
	this.validate = function(v, className, dis) {
		if (!dis) {
			dis = "";
		}
		var validateResult = true;
		var array = valiHelpler.classNameToArray(className);
		for (var i = 0; i < array.length; i++) {
			var ruleName = valiHelpler.getRuleName(array[i]);
			if (ruleName) {
				if (valiHelpler.getRuleType(array[i]) == 1) {
					if (array[i] == "required") {
						if (eval(ruleName + "('" + v + "')")) {
							validateResult = false;
							alert(dis
									+ valiHelpler.getRuleErrorMessage(array[i]));
							glableObject.focus();
							validateResult = false;
							break;
						}
					} else if (!eval(ruleName + "('" + v + "')")) {
						validateResult = false;
						alert(dis
									+ valiHelpler.getRuleErrorMessage(array[i]));
						glableObject.focus();
						validateResult = false;
						break;
					}
				} else if (valiHelpler.getRuleType(array[i]) == 2) {
					if (!eval(ruleName[0] + "('" + v + "',[" + ruleName[1]
							+ "])")) {
						alert(dis
								+ valiHelpler.getRuleErrorMessage(array[i])
										.replace("%s", ruleName[1]));
						glableObject.focus();
						validateResult = false;
						break;
					}
				} else if (valiHelpler.getRuleType(array[i]) == 3) {
					if (!eval(ruleName[0] + "('" + v + "',['" + ruleName[1]
							+ "'])")) {
						alert(dis + valiHelpler.getRuleErrorMessage(array[i]));
						glableObject.focus();
						validateResult = false;
						break;
					}
				}
			}
		}
		return validateResult;
	}
}

function frmValid(frm) {
	for (var i = 0; i < frm.length; i++) {
		glableObject = frm.elements[i];
		glableObjectDis = glableObject.getAttribute("dis");
		var value = frm.elements[i].value;
		value=value.replace(/\r\n/gi, "");
		// 格式验证
		if (!valiHelpler.validate(value, glableObject.className,
				glableObjectDis)) {
			glableObjectDis = "";
			return false;
		}
	}
	return true;
}

function frmValid1(frm) {
	var isOK=frmValid(frm);
	return isOK;
}

 //jsp页面先导入上面的js

   里面的每个class=“”和dis=""写验证的:dis指提示的内容,class指需要的验证

<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="jstl_c" %>  
<%@ taglib prefix="bean" uri="struts-bean" %>          
<%@ taglib prefix="ncss" uri="ncss" %>      
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>   
<%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %> 

<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<base href="${basePath}" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title> </title>
<link href="css/main.css" rel="stylesheet" type="text/css" />
<link href="js/myDatepicker/skin/WdatePicker.css" type="text/css" rel="stylesheet" />
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="aduit/js/add.js"></script>
<script type="text/javascript" src="aduit/js/validation.js"></script>

<script type="text/javascript">
 
 function onb(){
    $.ajax({
        dataType: "json",
        type: "post",
        data: "fileId="+$("#fileId").val(),
        cache: false,
        url: "audit/auditfileinfoaction.do?m=findByFileName",
        error: function(){
            alert('加载数据出错...');
            return false;
        },
        success: function(data){
            if (data != null && data.num >0) {
                $("#win").show();
                return false;
            }
            else {
                $("#win").hide();
            }
        }
    });
 }
 
 function check_value(){
    if(document.Forms.fileType.value=="012"){
        $("#picDiv").show();
        $("#txtDiv").show();
        $("#videoDiv").show();
        $("#audioDiv").show();
    }
     if(document.Forms.fileType.value=="014"){
        $("#picDiv").show();
        $("#txtDiv").show();
        $("#videoDiv").show();
        $("#audioDiv").show();
    }
     if(document.Forms.fileType.value=="010"){
         $("#picDiv").show();
        $("#txtDiv").hide();
        $("#videoDiv").hide();
        $("#audioDiv").hide();
    }
     if(document.Forms.fileType.value=="011"){
         $("#picDiv").hide();
        $("#txtDiv").show();
        $("#videoDiv").hide();
        $("#audioDiv").hide();
    }
     if(document.Forms.fileType.value=="000"){
         $("#picDiv").hide();
        $("#txtDiv").hide();
        $("#videoDiv").show();
        $("#audioDiv").hide();
    }
     if(document.Forms.fileType.value=="001"){
         $("#picDiv").hide();
        $("#txtDiv").hide();
        $("#videoDiv").hide();
        $("#audioDiv").show();
    }
 }
 


</script>

</head>
<body>
<div id="main">
  <div id="main_frame">
    <div class="m_lt"></div><div class="m_rt"></div><div class="m_lb"></div><div class="m_rb"></div>
    <h2><span>增加审核</span></h2>
    
    <div class="form_box">
      <div class="f_lt"></div><div class="f_rt"></div><div class="f_lb"></div><div class="f_rb"></div>
<form name="Forms" method="post" action="audit/auditfileinfoaction.do?m=insert" enctype="multipart/form-data" οnsubmit="if(!frmValid1(this)){return false;}">
      <table width="100%" border="0" class="form_table">
        <tr>
          <th scope="row">文件ID:</th>
          <td><input type="text" name="fileId" id="fileId" value="" class="required" dis="文件ID" οnblur="onb();"/><span class="red_style">*</span>
            <div id="win" style="display:none"><font color="red">* 文件ID已存在,请重新输入</font></div>
           </td>
          <th scope="row">文件类型:</th>
          <td>
             <select name="fileType" id="fileType" class="required" dis="文件类型" οnchange="check_value();">
		          <option value="">全部</option>
				  <option value="012">压缩文件</option>
				  <option value="014">文件夹</option>
				  <option value="010">图片</option>
				  <option value="011">文字</option>
				  <option value="000">视频</option>
				  <option value="001">音频</option>
			</select>	<span class="red_style">*</span> 
          </td>
        </tr>
        <tr>
          <th scope="row">文件名称:</th>
          <td><input type="text" name="fileName" id="fileName" class="required" value="" dis="文件名称"/><span class="red_style">*</span> 
          </td>
          <th scope="row">采集时间:</th>
          <td><input type="text" name="acquisitionTime" id="acquisitionTime" class="required" dis="采集时间" value=""  onClick="WdatePicker({dateFmt:'yyyy-MM-dd HH:mm:ss'})"/><span class="red_style">*</span> </td>
        </tr>
        <tr>
          <th scope="row">外部系统局点:</th>
          <td><input type="text" name="systemArea" id="systemArea" class="required" dis="外部系统局点" value=""/><span class="red_style">*</span></td>
          <th scope="row">外部系统类型:</th>
          <td>
              <select name="systemType" id="systemType" >
				  <option value="1">p2pcache</option>
			</select>
        </tr>
         <tr>
         <th scope="row">协议类型:</th>
          <td>
            <select name="proto" id="proto" class="required" dis="协议类型">
										<option value="">
											所有
										</option>
										<option value="0000">
											BT
										</option>
										<option value="0010">
											eMule
										</option>
										<option value="0020">
											PPStream
										</option>
										<option value="0030">
											Thunder
										</option>
										<option value="0040">
											FlashGet
										</option>
										<option value="0050">
											QQDowload
										</option>
										<option value="0060">
											PPLive
										</option>
										<option value="0070">
											QQLive
										</option>
										<option value="0080">
											QVOD
										</option>
										<option value="0090">
											UUSee
										</option>
										<option value="0100">
											风行
										</option>
									</select> <span class="red_style">*</span> 
         </td>
         <th scope="row">ftp创建索引时间:</th>
          <td><input type="text" name="createAt" id="createAt" class="required" dis="ftp创建索引时间" value=""  onClick="WdatePicker({dateFmt:'yyyy-MM-dd HH:mm:ss'})"/><span class="red_style">*</span> </td>
        </tr>
        <tr>
          <th scope="row">敏感等级:</th>
          <td>
            <select name="harmLevel" id="harmLevel" >
		          <option value=""> </option>
				  <option value="0">正常</option>
			</select>
			</td>
         <th scope="row">RAR文件母文件本地路径:</th>
          <td><input type="text" name="fileRarPath" id="fileRarPath" value=""/></td>
        </tr>
        <tr>
          <th scope="row">下载到本地文件存取路径:</th>
          <td><input type="text" name="fileLocalPath" id="fileLocalPath" class="required" dis="下载到本地文件存取路径" value=""/><span class="red_style">*</span> </td>
          <th scope="row">下载到本地源文件存取路径:</th>
          <td><input type="text" name="fileFtpPath" id="fileFtpPath" class="required" dis="下载到本地源文件存取路径" value=""/><span class="red_style">*</span> </td>
        </tr>
         <tr>
          <th scope="row">文件大小:</th>
          <td><input type="text" name="fileSize" id="fileSize" class="required" dis="文件大小" value=""/><span class="red_style">*</span> 
               <input type="hidden" name="fileHeat" id="fileHeat" value="0"/>
         </td>
        </tr>
      </table>
      <input type="hidden" name="fileNameManual" id="fileNameManual" value="0" />
      <div id="picDiv" style="display: none">
                  图片违规:
          <input type="text" name="picManualConform" id="picManualConform" value="0" οnkeyup="keydownpic();"/>
              <div id="pic"></div>  
        </div>
        <div id="txtDiv" style="display: none">
                    文字违规:
          <input type="text" name="textManualConform" id="textManualConform" value="0" οnkeyup="keydowntxt();"/>
           <div id="txt"></div>  
         </div>
        <div id="videoDiv" style="display: none">
                   视频违规:
         <input type="text" name="videoManualConform" id="videoManualConform" value="0" οnkeyup="keydownvideo();"/>
          <div id="video"></div>  
         </div>
        <div id="audioDiv" style="display: none">
                    音频违规:
          <input type="text" name="audioManualConform" id="audioManualConform" value="0" οnkeyup="keydownaudio();"/>
           <div id="audio"></div>  
      </div>
       <table width="100%" border="0" class="form_table">
        <tr>
          <td colspan="4" scope="row" class="form_footer" align="center">
          	<input type="submit" name="view_simg" id="view_simg" value="提交" class="form_submit"/>
          	<input type="button" name="view_simg" id="view_simg" value="返回" class="form_submit" οnclick="javascript:history.back(-1);"/>
          </td>
        </tr>
       </table>
     </form>
    </div>
  </div>
</div>

<script type="text/javascript" src="js/myDatepicker/WdatePicker.js"></script>
</body>
</html>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值