1.在tags.jsp進行修改
<%@ page isELIgnored="false" %>
<%@ taglib prefix="html" uri="http://struts.apache.org/tags-html"%>
<%@ taglib prefix="bean" uri="http://struts.apache.org/tags-bean" %>
<%@ taglib prefix="logic" uri="http://struts.apache.org/tags-logic" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<c:set var="ctx" value="${pageContext.request.contextPath}" />
<link rel="stylesheet" href="${ctx}/css/common.css" type="text/css" />
<script type="text/javascript" src="${ctx}/scripts/jquery.js"></script>
<script type="text/javascript" src="${ctx}/scripts/jquery.validate.js"></script>
<script type="text/javascript" src="${ctx}/scripts/jquery.metadata.js"></script>
<script type="text/javascript" src="${ctx}/scripts/localization/messages_cn.js"></script>
<script type="text/javascript" src="${ctx}/js/common/My97DatePicker/WdatePicker.js"></script>
<script type="text/javascript" src="${ctx}/js/common/jqueryValidate.js"></script>
<script type="text/javascript" src='${ctx}/dwr/engine.js'></script>
<script type='text/javascript' src='${ctx}/dwr/util.js'></script>
<script type="text/javascript">
<!--
var j = jQuery.noConflict();
//-->
</script>
==============================
2.jqueryValidate.js檔案進行修改
var j = jQuery.noConflict();
//只能包括中文字、英文字母、數字
j.validator.addMethod( "MaxNText",
function(value, element, param) {
var varReg= /^[A-Z]|[a-z]|[0-9]|[/u4e00-/u9fa5]$/;
var varValue = j.trim(value);
for(var i=0;i<varValue.length;i++){
var varChar = varValue.charAt(i);
if(!varReg.test(varChar))
return false;
}
var varLength= varValue.replace(/[^/x00-/xff]/g, 'xx').length;
return this.optional(element) || varLength>=param[0]&&varLength<=param[1];
},
"只能包括中文字、英文字母、數字,且長度在{0}-{1}個位元組之間(一個中文字算2個位元組)" );
//MaxNText 在GBK編碼裡,除了ASCII字元,其它都佔兩個字元寬
j.validator.addMethod( "getBytesLength",
function(value, element,param) {
var varValue = j.trim(value);
var varLength= varValue.replace(/[^/x00-/xff]/g, 'xx').length;
return this.optional(element) || varLength>=param[0]&&varLength<=param[1];
},
j.validator.format("請確保輸入的值在{0}-{1}個位元組之間(一個中文字算2個位元組)") );
//ExactNNumericText 表示固定為N位長度的數字。
j.validator.addMethod( "ExactNNumericText",
function(value, element) {
var varReg= /^[0-9]+$/;
var varValue = j.trim(value);
return varReg.test(varValue);
},
j.validator.format("請確保您輸入的是數字") );
//ActiveCurrencyAndAmount 表示貨幣符號和金額,其中金額的整數部分最多16位元字,小數部分固定2位元字。
//例如:< Amt Ccy="CNY" >2784245.00< /Amt >
//例如一元只能為1.00,不能為1或者1.0,金額第一位非零數字前禁止補零(例如一元只能為1.00,不能為01.00或者前補更多0)。
//註:貨幣符號採用《ISO-4217:Codes for the representation of currencies and funds》標準,人民幣的貨幣符號為"CNY"。
j.validator.addMethod("ActiveCurrencyAndAmount",
function(value, element) {
if(j.trim(value)==""){
return false;
}
var reg = /^([0]|([1-9]/d{0,15}))(./d{2}){1}$/;
return reg.test(value);
},
"貨幣符號和金額,其中金額的整數部分最多16位元字,小數部分固定2位元字" );
//SummaryAmountText 表示匯總金額,其中貨幣符號(3位)、金額正負的標識(1位),小數部分2為數字,整數部分最多20位元字,小數點(1位)
j.validator.addMethod("SummaryAmountText",
function(value, element) {
if(j.trim(value)==""){
return false;
}
var reg = /^[a-z|A-Z]{3}([0]|(/-{0,1}[1-9]/d{0,19}))(./d{2}){1}$/;
return reg.test(value);
},
"貨幣符號(3位)、金額正負的標識(1位),小數部分2為數字,整數部分最多20位元字" );
//AmountText 表示金額,其中貨幣符號(3位),小數部分2為數字,整數部分最多16位元字,小數點(1位)。
j.validator.addMethod("AmountText",
function(value, element) {
if(j.trim(value)==""){
return false;
}
var reg = /^[a-z|A-Z]{3}([0]|([1-9]/d{0,15}))(./d{2}){1}$/;
return reg.test(value);
},
"貨幣符號(3位),小數部分2為數字,整數部分最多16位元字" );
//DecimalNumber 表示數量,其中整數部分最多16位元字,小數部分固定2位元字。
j.validator.addMethod("DecimalNumber",
function(value, element) {
if(j.trim(value)==""){
return false;
}
var reg = /^([0]|([1-9]/d{0,15}))(./d{2}){1}$/;
return reg.test(value);
},
"整數部分最多16位元字,小數部分固定2位元字" );
//PercentageRate 表示利率,最多11位元字,其中小數部分最多10位元字。
j.validator.addMethod("PercentageRate",
function(value, element) {
if(j.trim(value)==""){
return false;
}
var reg = /^([0]|([1-9]/d{0,10}))(./d{1,10}){1}$/;
if(reg.test(j.trim(value))){
if(j.trim(value).length>12){
return false;
}
}
return reg.test(value);
},
"最多11位元字,其中小數部分最多10位元字" );
//一代報文金額15位, 13位整數+2位小數, amount_1, 金額
j.validator.addMethod("amount_1", function(value, element){
if(j.trim(value) == ""){
return false;
}
return /^/d{1,13}(/./d{1,2}){0,1}$/.test(value);
},
"整數位不超過13位元字, 小數不超過2位元字");
//行號, 12或14位元字
j.validator.addMethod("bankcode", function(value, element){
if(j.trim(value) == ""){
return false;
}
return /^(/d{12}|/d{14})$/.test(value);
},
"行號需填12或14位的數字");
====================
3.在每個jsp檔案裡的$都換成j