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" onsubmit="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" onblur="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="文件类型" onchange="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" onkeyup="keydownpic();"/>
<div id="pic"></div>
</div>
<div id="txtDiv" style="display: none">
文字违规:
<input type="text" name="textManualConform" id="textManualConform" value="0" onkeyup="keydowntxt();"/>
<div id="txt"></div>
</div>
<div id="videoDiv" style="display: none">
视频违规:
<input type="text" name="videoManualConform" id="videoManualConform" value="0" onkeyup="keydownvideo();"/>
<div id="video"></div>
</div>
<div id="audioDiv" style="display: none">
音频违规:
<input type="text" name="audioManualConform" id="audioManualConform" value="0" onkeyup="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" onclick="javascript:history.back(-1);"/>
</td>
</tr>
</table>
</form>
</div>
</div>
</div>
<script type="text/javascript" src="js/myDatepicker/WdatePicker.js"></script>
</body>
</html>
284

被折叠的 条评论
为什么被折叠?



