【发布时间】:2013-02-06 05:57:28
【问题描述】:
我在表单上输入的数字有问题。当我输入一个数字,比如 88.2 并提交时,没有问题。但是当这个其他人做同样的事情时,如果你从数字输入中回显变量,你可以在 php 代码中看到它已经删除了小数点 (.)。
当他使用逗号时它不会删除他的小数点但是,当我使用逗号时它会为我删除它。有什么办法可以解决这个问题,让它只接受“。”作为小数点?
这是输入:
<input id="version" name="version" step="0.1" min="1.0" max="250.0" type="number" class="input-small" placeholder="87.2"></input>
PHP 代码中没有什么不寻常的地方,只有
echo $_POST['version'];
input-small css:
.input-small {
width: 90px;
}
【问题讨论】:
-
我相信
<input type="number">只接受整数作为有效值。任何允许的小数都可能是浏览器不正确/未实现的验证。 -
注意:欧洲人使用逗号作为小数点。你能在某个地方强制设置文化设置吗?
-
我知道我们使用不同的标记,但有没有办法让它不删除点?如果其他人进入 88.2 会出现 882,真的很烦人。
-
@SteveWellens 我不知道那会在哪里,我在 Google 上只能找到 ASP.NET 结果。
-
@JesperHallenberg - 首先找出/决定它是发生在浏览器还是服务器上。由于服务器是不变的,并且浏览器和区域设置不同,它可能在浏览器中。 (或者服务器正在检测浏览器设置并做出反应)。您可以使用 Fiddler 或一些嗅探工具进行检查。当您搜索使用 -asp.net 过滤掉 asp.net 命中。其他人也有同样的问题:zen-cart.com/…