需求:判断当前textarea是否已经换行(这个换行有2种方式:1.不断输入文字直到超过指定宽度后自动换行;2.按了回车以后进行换行)

单纯的解决第二种换行很简单。网上提供了很多常规的解决方案。

Demo:http://www.cnblogs.com/xrwang/archive/2011/04/27/LineBreakInJavascript.html

但是这是不完备的。是不能根本解决问题的!

因为很显然不能解决第一种问题.有人会说使用wrap="off"强制不能换行。那么麻烦你先了解下wrap:http://www.w3schools.com/tags/att_textarea_wrap.asp

当你不断输入确实不能换行了。但是横向文字在不断增加。这个应该不是用户可以接受的方式吧。

下面说说我的解决方案。

做的时候设置line-height 比如说设置为30.

现在我们把操作的textarea 叫做a

在需要校验的时候。动态创建一个textarea 叫做b 具备a的一切样式 .最好的方式是将a clone下来。获取到里面的value值。设置当前的height为line-height也就是 30.

现在简单了 判断b的scrollHeight 的值是否大于30 即可。大于30说明换行了。用scrollHeight我们同样可以判断当前的行数

textarea 是否换行的问题解决的更多相关文章

  1. angularjs中类似textarea的换行、空格处理

    背景 今天测试人员测试出来一个显示数据的页面,没有换行. 原因剖析 这个页面是从一个<textarea>的页面拿到的数据,存到数据库中后再返回来的. 1. 知道这点之后,就有了调查方向了: ...

  2. html5 textarea 写入换行的方法

    html5 textarea 写入换行的方法<pre> <textarea id="fwe" class="selmiao" cols=&qu ...

  3. 关于textarea中换行、回车、空格的识别与处理

    需求:在textarea中输入文字,提交给后台后,后台输出在另一个页面,文字按原格式显示.   问题:如何还原输入框中的换行和空格? 兼容性:IE9以上.FF.chrome在换行处匹配/\n/     ...

  4. textarea内部换行实现

    当在使用textarea的时候,有一次需求,需要做到自定义换行,而不是通过textarea定宽来自动换行,其实在html中可以直接通过<br/>来换行,同时也想到用\n来实现换行,其结果是 ...

  5. html textarea 获取换行

    1.需求: 获取textarea中的换行符,存到数据库中,并在取出时显示出换行操作 2.实践 2.1 发现可以取到换行符 "/n" ,并且可以存储到MySQL数据库中,并不需要特殊 ...

  6. textarea文本换行和页面显示换行符

    在textarea里写的文本有换行,但是显示到页面后就不会自动换行,通过对数据分析发现textarea里的换行符是\n\r,然而HTML中的换行为<\br>解决办法有两种: 第一种:把文本 ...

  7. textarea 带换行符保存数据与带换行符展示数据

    毕业设计进行ing~ 最近要想要实现一个站内邮箱,想要带换行地输出邮件主体内容. 这两天为了解决这个问题百度了好多东西,发现相关问题有很多记录,可能这确实是大多数初学者也碰到的问题.自己找了好多地方都 ...

  8. js实现把textarea通过换行或者回车把多行数字分割成数组,并且去掉数组中空的值。

    删除数组指定的某个元素 var msg = " ";  //textarea  文本框输入的内容 var emp = [ ];   //定义一个数组,用来存msg分割好的内容 1. ...

  9. textarea使换行变顿号

    window.onload = function(){ document.getElementById('area').addEventListener('keydown',function(e){ ...

随机推荐

  1. [原]调试实战——程序CPU占用率飙升,你知道如何快速定位吗?

    原调试debugwindbghangprocess explorer 前言 如果我们自己的程序的CPU Usage(CPU占用率)飙升,并且居高不下,很有可能陷入了死循环.你知道怎么快速定位并解决吗? ...

  2. 小白学习之pytorch框架(4)-softmax回归(torch.gather()、torch.argmax()、torch.nn.CrossEntropyLoss())

    学习pytorch路程之动手学深度学习-3.4-3.7 置信度.置信区间参考:https://cloud.tencent.com/developer/news/452418 本人感觉还是挺好理解的 交 ...

  3. 批量刷数据sql

    update t_free_m**  m set m.plate_no = ( select v.plate_num from t_wh_vehi*** v where v.vin = m.car_v ...

  4. 进程间数据共享 (multiprocess.Manager)

    进程间数据共享 (multiprocess.Manager) 一.进程之间的数据共享 展望未来,基于消息传递的并发编程是大势所趋 即便是使用线程,推荐做法也是将程序设计为大量独立的线程集合,通过消息队 ...

  5. 题解-------CF235B Let's Play Osu!

    传送门 题目大意 求出总得分的期望值. 思路 还没有学习数学期望的小朋友赶紧去学一下数学期望,这里只提供公式: $E\left ( x \right )=\sum_{k=1}^{\infty }x_{ ...

  6. AUTOSAR-Specification of Watchdog Manager 阅读

    一.开门狗管理有三种机制 1.定周期任务实时监控 2.非定周期任务执行时间监控 3.逻辑监控,执行顺序. 二.受监控的实体和检查点 Watchdog Manager监督软件的执行.监督的逻辑单位是受监 ...

  7. 金蝶cloud成本核算流程

  8. Linux介绍,基本命令

  9. 编码,基础数据类型 int str bool,for循环

    一.编码: ASCII: 8位  1个字节  其实是7位,首位全部是0,创造者留出一位,以便后续使用; gdk :    16位 2个字节 国标码 只能识别汉语和英语 英语:8位 1个字节    汉语 ...

  10. 求Fibonacii数列的第40个数

    public class Fibonacii{ public int m1(int n){ if(n == 1||n == 2){ return 1; } return m1(n-1) + m1(n- ...