zoukankan      html  css  js  c++  java
  • javascript textarea MaxLength 属性的实现

    代码

    // Keep user from entering more than maxLength characters
    function doKeyPress(obj, evt) {
        maxLength 
    = obj.getAttribute("maxlength");
        
    var e = window.event ? event.keyCode: evt.which;
        
    if ((e == 32|| (e == 13|| (e > 47)) { //IE
            if (maxLength && (obj.value.length > maxLength - 1)) {
                
    if (window.event) {
                    window.event.returnValue 
    = null;
                } 
    else {
                    evt.cancelDefault;
                    
    return false;
                }
            }
        }
    }
    function doKeyUp(obj) {
        maxLength 
    = obj.getAttribute("maxlength");
        
    if (maxLength && obj.value.length > maxLength) {
            obj.value 
    = obj.value.substr(0, maxLength);
        }
        sr 
    = obj.getAttribute("ShowLength");
        
    if (sr) {
    //        alert((maxLength - obj.value.length));
            document.getElementById(sr).innerHTML = "可填 "+ (maxLength - obj.value.length)+" 字";
        }
    }

    // Cancel default behavior and create a new paste routine
    function doPaste(obj) {
        maxLength 
    = obj.getAttribute("maxlength");
        
    if (maxLength) {
            
    var detect = navigator.userAgent.toLowerCase();
            
    if ((window.event) && (detect.indexOf("safari"+ 1 == 0)) { //IE
                var oTR = obj.document.selection.createRange();
                
    var iInsertLength = maxLength - obj.value.length + oTR.text.length;
                
    try {
                    
    var sData = window.clipboardData.getData("Text").substr(0, iInsertLength);
                    oTR.text 
    = sData;
                } 
    catch(err) {}
                
    if (window.event) { //IE
                    window.event.returnValue = null;
                } 
    else {
                    
    //not IE
                    obj.value = obj.value.substr(0, maxLength);
                    
    return false;
                }
            }
        }
    }

    http://blog.offbeatmammal.com/post/2006/10/26/MaxLength-on-a-Textarea.aspx

  • 相关阅读:
    17 applyMiddleware MainMiddleWare, redux-thunk , createStore
    16 redux简介
    15 react-redux provider组件
    14 React Refs
    13 React 表单与事件
    12 React AJAX
    Vue3 getCurrentInstance与ts结合使用的问题
    Vue3 更改setup中定义的值不渲染到视图上【Vue2.x向Vue3.x的迁移(踩坑)日记】
    Vue3 中组件传值emit【Vue2.x向Vue3.x的迁移日记】
    vue js 模糊匹配搜索查询
  • 原文地址:https://www.cnblogs.com/jgjgjg23/p/1867751.html
Copyright © 2011-2022 走看看