如何使此数字输入接受逗号
How can I make this number input accept commas?
我在网站上有一个输入,这个输入的类型是数字。因此,我无法输入所需的逗号。
有人可以教我如何只输入我的输入数字和逗号吗?
这是我有自动取款机的输入:
Bedrag: <input type="number" step="any" min="0" name="goed_doel_bedrag" id="goed_doel_bedrag" placeholder="Vul hier het bedrag in">
这需要是一个小数点逗号(不是千)。
如果
实现提供的用户界面被编写或配置为接受使用数字逗号的本地化输入,则具有type=number
的input
元素接受逗号。这是由浏览器和/或系统设置决定的,您无法在代码中进行设置。
结论是,只有当您愿意接受用户界面的变化时,这些元素才有用。每个用户都可以按照其浏览环境规定的方式输入数字,并且浏览器应将其规范化为特定的内部格式(例如,如果区域设置使用逗号作为小数分隔符,则将 5,63 转换为 5.63)。
如果您不想这样做,则需要使用其他方法,例如 type=text
.
好的,在这种类型的作业中,你应该使用JS和/或jQuery。
首先创建一个函数:
function commaOnly(input){
var value = input.val();
var values = value.split("");
var update = "";
var transition = "";
var expression=/(^'d+$)|(^'d+'.'d+$)|[,'.]/;
var finalExpression=/^([1-9][0-9]*[,'.]?'d{0,3})$/;
for(id in values){
if (expression.test(values[id])==true && values[id]!=''){
transition+=''+values[id].replace('.',',');
if(finalExpression.test(transition) == true){
update+=''+values[id].replace('.',',');
}
}
}
input.val(update);
}
这会将点转换为逗号,并且只接受一个逗号。这样,如果有人按下点,它将被更改为逗号,而不是阻止他的输入。
然后将该函数分配给您的输入:
$('#goed_doel_bedrag').keyup(function (e) {
commaOnly($(this));
});
并更改为输入类型 text
:
<input type="text" step="any" min="0" name="goed_doel_bedrag" id="goed_doel_bedrag" placeholder="Vul hier het bedrag in">
小提琴在这里:jSFiddle
相关文章:
- 我可以使此幻灯片图像自动播放吗?
- 我如何使此联系表格工作
- 如何使此链接列表受cookie支持
- 是否可以在数字输入框中的小按钮中添加事件侦听器
- 如何使按钮作为输入类型文件
- 为什么我需要在setTimeout中有匿名函数才能使此代码工作
- 当可见时,我如何使此对话框阻止访问页面的其余内容
- 使大数字的价值小于小数字(JS)
- 用于数字输入的正则表达式
- AngularJs:在数字输入字段中设置验证的条件最小值和最大值
- 敲除:如何对两个数字输入进行双向绑定
- 在数字输入上按回车键时提交
- 如何显示正好 2 位数字的 html 数字输入的输入值
- 如何将此文本输入文本更改为密码输入?拉拉维尔
- 无法破解pass-css插件以使两个输入元素出现在一行中
- 如何使此SetInterval在悬停关闭时停止
- 如何预加载这些图像以使此功能更平滑
- 如何使此循环工作?它's返回未定义的语言js
- 如何使此数字输入接受逗号
- 如何使程序保留输入的数据(数字)