简单介绍下使用js代码与jq插件获取input中的数字值,且将其精确到指定的位数的办法.
首先我们在html文档中新建一个input元素 给其指定id为aaa设置其数值为88.35523
代码如下:
<input type="text" id="aaa" value="88.35523" />
当我们需要获取其值的时候可以使用
<script type="text/javascript">
var hqz = document.getElementById("aaa").value;
alert(hqz);
</script>
或者使用jq代码
<script type="text/javascript">
var hqz = $("#aaa").val;
alert(hqz);
</script>
来获取显示id值aaa的元素中的数值,如果获取值为带小数点的浮点数时,我们只想要获取小数点后面前三位该怎样实现呢?
<script type="text/javascript">
var aaa = document.getElementById("aaa").value;
var xsz = aaa.toFixed(3);
alert(xsz);
</script>
js内置了toFixed()方法,它可以将数字四舍五入为指定位数的数字。
或者
<script>
var sz = $("#aaa").val;
alert( Math.round(sz*1000)/1000);
</script>
先将需要保留的位数成为小数点前面的整数然后再使用round()方法将数字变为的整数数字,然后重新将变为整数部分的保留的三位小数重新变为小数点后的数值.
或者
<script type="text/javascript">
var num = $("#aaa").val;
var repx = /\.\d{2,}$/;
var newnum = num.replace(repx,num.substr(num.indexOf('.'),4));
alert(newnum);
</script>
使用正则来截取小数点后三位数值
或:
<script type="text/javascript">
var nn = document.getElementById("aaa").value;
var zzz = nn.substring(0,nn.indexOf(".") + 4);
alert(zzz);
</script>
通过indexOf()方法返回是指定字符在数值中首次出现位置,然后用substring()方法提取字符串中相对于两个指定坐标之间的字符从而获得截取后的数值.