继我问的另一个问题之后,我似乎真的没有取得任何进展。由于我的无能。我选择了这些人的答案,因为他回答了我的问题。
我正在收集我没有问正确的问题,因为我不知道该怎么做..
所以问题是我有输入元素。保持简单;
<input type="text" maxlength="12" name="price" id="price" class="foo">
我希望用户能够在该价格的任何位置仅输入数字和一个句点 (.)。所以可能是 3.00 或 300.00 或 3000
有人可以帮帮我吗,我快要睁大眼睛了。
提出的较旧问题在这里带警报的快速正则表达式
你可以,在change
输入的事件,检查数字格式是否正确。这段代码将尝试获取数字并删除其他任何内容:(我假设您使用 jQuery,如果没有,请这样做)
$('#price').change(function() {
$(this).val($(this).val().match(/\d*\.?\d+/));
});
看到它工作here.
EDIT:如果你没有 jQuery,这段代码的作用是相同的(至少在 Chrome 中):
document.getElementById('price').onchange = function() {
this.value = this.value.match(/\d*\.?\d+/);
};
EDIT 2:不确定我是否遵循,但您也可以添加它以防止字母和其他字符before the change
event:
$('#price').keypress(function(event) {
var code = (event.keyCode ? event.keyCode : event.which);
if (!(
(code >= 48 && code <= 57) //numbers
|| (code == 46) //period
)
|| (code == 46 && $(this).val().indexOf('.') != -1)
)
event.preventDefault();
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)