js 如何判断输入字符串是不是换行了?(注意:字符串中无换行符号) 下面看补充例子,求各位大神赐教

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js 如何判断输入字符串是不是换行了?(注意:字符串中无换行符号) 下面看补充例子,求各位大神赐教相关的知识,希望对你有一定的参考价值。

<table>
<tr>
<td width="2%" id="td1">davcgavjhafbjhvkadsvsdfvfsfvsfvfsvseeeeee</td>
<td id="td2" width="88%">2</td>
<td id="td3" width="10%">3</td>
</tr>
</table>
js如何判断td1中的字符串是否已换行?

先获得td的行高
然后获得td的实际高度
如果实际高度大于行高,那么就已经换行了~~~
参考技术A 根据换行符号的ascii码,比如这样写,就是换行了,因为在d和f之间,其实隐藏了\r\n
-------------------
<td width="2%" id="td1">davcgavjhafbjhvkadsvsd
fvfsfvsfvfsvseeeeee</td>
-------------------追问

这种方法在不变大小window.width和window.height可行,但如果不同大小或改变浏览器的放大缩小,这里的td的宽就会改变,因此该方法是不是还有待改进呢?

追答

2%的意思,就是根据你的浏览器大小(100%),进行自动绝对大小调整(但相对浏览器大小始终维持2%)
如果你是绝对的大小,单位就应该用像素px

而且你的问题,很奇怪,js判断换行,和td大小的改变,两者一点关联都没有,不清楚你到底想做什么。

js怎么判断一个数字是几位小数

首先你需要知道split 这个属性,然后通过获取需要判定的数字并且分割得到一个数组,然后即可判断是多少位小数,注意你的内容只能有一个小数点,如果多了需要进行判断。
代码如下:
html <div id="aabbcc">12.321456</div>

js
var _id = document.getElementById("aabbcc").innerHTML;
var _iid = _id.split(".")
console.log(_iid[1].length)
参考技术A 第一种,利用math.round
var original=28.453
1) //round "original" to two decimals
var result=Math.round(original*100)/100; //returns 28.45
2) // round "original" to 1 decimal
var result=Math.round(original*10)/10; //returns 28.5

第二种,js1.5以上可以利用toFixed(x) ,可指定数字截取小数点后 x位
3) //round "original" to two decimals
var result=original.toFixed(2); //returns 28.45
4) // round "original" to 1 decimal
var result=original.toFixed(1); //returns 28.5

以上两种方法最通用,但却无法满足某些特殊要求,比如保留小数点后两位,如果不满两位,不满两位则补零。
参考技术B 获得这个数字然后转换成String类型,通过split(".")的方式获得数组a 然后alert(a[1].length)就可以弹出小数的个数 参考技术C var num = 1.22222;

alert(String(num).length - String(num).indexOf('.') - 1);
参考技术D 用正则表达式,或是写一个函数判断

以上是关于js 如何判断输入字符串是不是换行了?(注意:字符串中无换行符号) 下面看补充例子,求各位大神赐教的主要内容,如果未能解决你的问题,请参考以下文章

js判断字符串中是不是有换行符或回车符/n

VC++中,声明包含字符串的数组,怎么换行?

js怎么判断字符串中是不是有中文

JAVA中如何判断一个字符串是不是换行

TextArea 如何用js判断每11个字符就让他换行,有回车的效果,假如我一直输入不按回车也会判断有多少行

js 如何判断输入的字符串中含有特殊字符。最好有例子啊