Html5输入类型编号格式

时间:2015-06-18 07:30:46

标签: android iphone html5 windows-phone-8 input

我有这个页面,我使用输入类型编号。这样它就会在wp,android和ios设备上显示数字键盘。

但我的问题是,如果用户在设备上使用文化信息。让我们说丹麦。显示使用的数字键盘,而不是。

但输入数字不会接受。 任何人都知道如何做到这一点?

感谢您的时间。

2 个答案:

答案 0 :(得分:0)

使用jquery检索值时,返回一个。小数分隔符。试试这个:

<!DOCTYPE html>
<html>
<head>
<script src="https://code.jquery.com/jquery-2.1.1.min.js"></script>
  <meta charset="utf-8">
  <title>JS Bin</title>
</head>
<body>
  <input type="number" name="myNum" id="myNum">
  <button id="submit">Submit</button>
  <hr/>
  <code></code>
  <script>
    $("#submit").on("click",function() {
      var numericValue = $("#myNum").val();
      $("code").html(numericValue);
    });
  </script>
</body>
</html>

http://output.jsbin.com/xixunewowe

答案 1 :(得分:0)

尝试将lang元素中的en属性设置为<html><input>元素本身,以强制小数点作为输入语法。例如:

<input type="number" name="myNum" id="myNum" lang="en">

然而,用户的环境甚至可能会覆盖此情况,在这种情况下,唯一的选择是包含一个需要小数点而不是逗号的消息。

这是对数字输入类型的区域设置处理的良好记录: https://www.aeyoun.com/posts/html5-input-number-localization.html

更新:

另一种方法是通过使用novalidate元素中的<form>属性来阻止表单验证输入,如下所示:

<form novalidate>
  <input type="number" name="myNum" id="myNum">
  <button id="submit">Submit</button>
</form>

这将允许任何内容,甚至是非数字,因此您必须设置JavaScript代码来检查和处理该值。

再次更新:

想到另外一个选择 - 使用pattern属性进行正则表达式检查并使用普通的旧text输入类型。例如:

<input type="text" name="myNum" id="myNum" pattern="[0-9.]*">

优势:您可以准确控制用户可以输入的内容。

缺点:移动设备上的键盘不是数字键盘。

请注意,HTML输入类型可能会被欺骗,因此您仍需要进行服务器端验证。