Javascript 文本区域,10行,每行35个字符

Javascript 文本区域,10行,每行35个字符,javascript,Javascript,我有一个包含许多元素的HTML页面。页面是可滚动的,这意味着页面中有一个滚动条。直到页面,我有一个带有指定行和列属性的HTML文本区域。 现在我想要一个简单的JavaScript解决方案,它将帮助我在用户每次输入任何字符时验证以下几点: 文本区域中的行数不大于10 每行少于或等于35个字符 如果用户超过任何特定行的35个字符限制,则只有在总行数不超过10的情况下,第36个字符才会自动从下一行开始,否则它将显示错误弹出消息并停止 用户应该能够修改任何行(它可能是最后一行或任何中间行),但仍应遵循上

我有一个包含许多元素的HTML页面。页面是可滚动的,这意味着页面中有一个滚动条。直到页面,我有一个带有指定行和列属性的HTML文本区域。 现在我想要一个简单的JavaScript解决方案,它将帮助我在用户每次输入任何字符时验证以下几点:

  • 文本区域中的行数不大于10
  • 每行少于或等于35个字符
  • 如果用户超过任何特定行的35个字符限制,则只有在总行数不超过10的情况下,第36个字符才会自动从下一行开始,否则它将显示错误弹出消息并停止
  • 用户应该能够修改任何行(它可能是最后一行或任何中间行),但仍应遵循上述所有3点

  • 我使用以下命令来限制文本区域中允许的字符数。 这不仅会计算到结尾时修剪的字符数,还会写出剩下的字符数


    我想您现在需要做的就是找出如何添加新行(尝试类似text+=“\r\n””)我也做过类似的例子:

    文本区域的最大长度=1875; 行的最大长度=75; 禁用回车,因为超过75的倍数,SW会自动换行文本

    就是这样,带onkeydown触发器:

    function wrapTextArea(event,id,maxLineLenght){
    
        // delete and canc
        if((recuperaKeyCode(event)!=8) && (recuperaKeyCode(event)!=46))  {
    
            var field =  document.getElementById(id).value;
            var nextIndex = 0;
            for(var i=0; field.length>nextIndex; i++){
                nextIndex=maxLineLenght*(i+1)+i;
                if(field.length==nextIndex){
                    if(field.charAt(nextIndex)!= "\n"){
                        field=field.substring(0, nextIndex)+"\n"+field.substring(nextIndex, field.lenght);
                    }
                }
            }
            document.getElementById(id).value = field;
        } 
    }
    
    这就是我禁用enter键的方式,其中key=13:

    function disableKey(event,key){
    
        if(recuperaKeyCode(event)==key){
            event.preventDefault();
        }
    }
    

    您是否尝试过这样做,但失败了?发布错误,我们很乐意提供帮助。
    function disableKey(event,key){
    
        if(recuperaKeyCode(event)==key){
            event.preventDefault();
        }
    }