javascript控制textarea

T_long 2012-11-29 05:30:55
如何用javascript控制textarea每行显示的字数,比如每行显示11个字,超过自动换行
...全文
111 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
T_long 2012-11-30
  • 打赏
  • 举报
回复
引用 2 楼 ILOVE_ASPNET 的回复:
是不是你回车 本来就换行,然后你程序里面当长度=11的时候 又加了\n 所以就换了二次, 你应该就去keyup事件 判断文本框输入的长度,不要判断keycode =8还是13 ,就用keyup 事件监听,长度到了11 就加个\n
那输入enter的时候怎么办呢?
ILOVE_ASPNET 2012-11-29
  • 打赏
  • 举报
回复
是不是你回车 本来就换行,然后你程序里面当长度=11的时候 又加了\n 所以就换了二次, 你应该就去keyup事件 判断文本框输入的长度,不要判断keycode =8还是13 ,就用keyup 事件监听,长度到了11 就加个\n
T_long 2012-11-29
  • 打赏
  • 举报
回复
function CountText(source) {
        var currentValueLength;
        var maxLength;
        var objSource = document.getElementById(source);
        if (event.keyCode == 8 || event.keyCode ==13) {
////            alert(objSource.value.lastIndexOf("\n\n"));
////            alert(objSource.value.substring(objSource.value.length - 2));
////            alert(objSource.value.substring(objSource.value.length - 1));
                  if (event.keyCode == 13 && objSource.value.lastIndexOf("\n")>0) {
                objSource.value = objSource.value.substring(0, objSource.value.lastIndexOf("\n") - 1);
            }
        }
          else {
            if (null != objSource) {
                maxLength = 11;
                currentValueLength = objSource.value.length;
                var tempLength = objSource.value.length + 2;
                if (tempLength > 1 && tempLength % 13 == 0) {
                    //alert(objSource.value);
                    objSource.value += "\n";
                    objSource.value = objSource.value.substring(0, objSource.value.lastIndexOf("\n") - 1);
                }
            }
        }
    }
写了这么个,输入的时候会自己换行,但是,输入11个数,按enter的时候中间会空一行

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧