JSP 如何格式化数字并输入

k10s72fa  于 2022-12-07  发布在  其他
关注(0)|答案(1)|浏览(244)

我有一个输入数字,我必须接受34,34两个十进制数的值,所以我的代码是:

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ page isELIgnored="false"%>
    <input type="number" min="0" name="price" pattern="0.00"
                        step=".01" required
                        value="<fmt:formatNumber type = "number" 
                        pattern="0.00" value = "${home.price}" />"

问题是inpput为空时不加载该值,因为如果这样做

<label><fmt:formatNumber type = "number" 
                    pattern="0.00" value = "${home.price}</label>

这个号码是按正确的格式打印的。2有人能帮我吗?

ukdjmx9f

ukdjmx9f1#

使用fmt:formatNumber上的var属性来存储结果并在输入中使用它,并确保您使用的区域设置提供了浏览器可以使用的数字:

<fmt:setLocale value="en"/>
<fmt:formatNumber type="number" 
                  pattern="0.00" value="${home.price}"
                  var="myNum"/>
<input type="number" min="0" name="price" pattern="0.00"
                    step=".01" required
                    value="${myNum}"/>

特别是本地化使这相当丑陋,所以我真的建议看一下jsf
另请参阅:

相关问题