如何格式化数字并输入

  • 本文关键字:数字 格式化 jsp jstl
  • 更新时间 :
  • 英文 :


我有一个输入数字,我必须用34,34两个十进制数字替换vlaue,所以我的代码是:

<%@ 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}" />"

问题是输入是空的,没有加载值,因为如果我做

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

号码是用正确的形式打印的。有人能帮我吗?

使用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。

另请参阅:

  • 输入类型号的本地化(JSP(
  • 独立于语言的JSP自定义模式的JSTL formatNumber
  • 在JSF中格式化double

最新更新