问题描述金额存储的字段是是以分位存储的,展示的时候要将后两位用小数点隔开 1000 > 10.00问题出现的环境背景及自己尝试过哪些方法<fmt:formatNumber> 可以对有小数点的进行操作,如果将整数选一部分转成小数需要写给自定义pattern属性吗?使用${fn:substring(str, start, end}分别截取,中间在拼上小数点最后显示;2.1 截取的时候因为金额长度不固定,我需要先取到金额的长度,这样取${fn:length(${orderRooms.price})}方法报错了;${}再写一个${}就出问题了,这是什么原因?2.2 曲线了一下先set一个对象,取的时候${fn:length(price)}报错了: Problems calling function 'fn:length'我可以自己写一个js然后可以行内调用吗,<i>formatXXX(${orderRooms.price})</i>?相关代码<c:set var="price" scope="page" value="${orderRooms.price}"/><p>${price}</p><c:set var="priceLength" value="${fn:length(price)}" /><c:set var="pricePrefix" value="${fn:substring(orderRooms.price, 0, priceLength-2)}" /><c:set var="priceSuffix" value="${fn:substring(orderRooms.price, priceLength-2, priceLength)}" /><p>${priceLength}--${pricePrefix}--${priceSuffix}</p><p>体验价:¥<i>${orderRooms.price}</i></p>你期待的结果是什么?实际看到的错误信息又是什么?以上三种方法的问题希望得到解答;最终的结果是1000 > 10.00 用的别的方法能解决也可以;
2 回答
精慕HU
TA贡献1845条经验 获得超8个赞
<fmt:formatNumber type="number" value="${price/100}" pattern="###############0.00"/>
添加回答
举报
0/150
提交
取消