jquery dwr 关于$符冲突解决方法

    技术2022-05-19  21

    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


    最新回复(0)