验证 jQuery 中带有一个小数位的负数
validate negative number in jquery with one decimal place
我想通过以下方式使用 jauery 验证文本字段:
1.文本字段仅取0-9,只有一位小数;以及
2.如果输入的金额不是负数,请将负号放在 乞求输入的数字!
$('[name="pm"]').keyup(function() {
//?
});
您可以通过正则表达式验证字符串并String#match
:
if (this.value.match(/^-?'d+(?:'.'d){0,1}$/)) {
// It's valid
}
或者更jQuery-ish(上面不支持textarea
可靠,只是input
):
if ($(this).val().match(/^-?'d+(?:'.'d){0,1}$/)) {
// It's valid
}
(例如,this.value
=> $(this).val()
.)
分解正则表达式:
-
^
- 匹配字符串的开头 -
-?
- 单个可选-
字符 -
'd+
- 一个或多个数字 (0-9) -
(?:...)
- 非捕获分组,包含:-
'.'d
- 最多一个.
后跟一位数字
-
-
{0,1}
- 允许非捕获分组零次或一次 -
$
- 匹配字符串的结尾
请注意,上述内容拒绝-.1
。如果你想接受它,它会变得更复杂,但上面的链接应该会有所帮助。
无偿现场示例 | 来源
试试这段代码。
$('[name="pm"]').keyup(function() { if($(this).val().indexOf('-') != 0){ var val = $(this).val(); $(this).val("-" + val); }});
如果它不起作用,请将其替换为 $('[name="pm"]')
指定解决方案的排列和添加:
从@Some_Coder答案
1)首先这样做
http://www.texotela.co.uk/code/jquery/numeric/
来自游戏制作者回答与修改
$('[name="pm"]').keyup(function() { if($(this).val().indexOf('-') != 0){ var val = $(this).val(); $(this).val("-" + val); }if ($(this).val() == '-') { $(this).val(''); }});
你会得到想要的结果!
如果你使用jQuery,那么你可以使用这个插件。
http://www.texotela.co.uk/code/jquery/numeric/
相关文章:
- 是否有一个JS/jQuery函数可以获取某个类的每个元素的ID
- 如何在只能有一个asp.net表单的主页上从asp.net页面中的javascript中获取值
- 有可能在来自链接的警报中有一个值吗
- 是否<asp:文本框>有一个onFocusLost事件
- 让谷歌数据图表有一个24小时x轴
- PayPal按钮是否有一个简单的选项,其中金额基于一些用户输入
- 我确实有一个表单,如果用户输入了输入,它应该检查否定或空的输入框,并抛出一条警告消息
- 在这个使用hasOwnProperty的对象扩展程序中有一个错误,I'我不确定那个bug是什么,也不确定这个扩展
- 当知道同一hiearch中至少有一个元素时,遍历到元素.结构使用jquery
- PNG图像被覆盖,但每个图像都有一个链接可以更改,每次一个-Javascript/jQuery/CSS
- JQuery是否有一个“;移动“;作用或者有没有一种更紧凑的方法来做到这一点
- Regex或javascript每X个连续单词中有一个单词
- Jquery时间启动计时器,我有一个计时器的代码,但它在页面加载时启动
- 是否有一个javascript库来解析简单的查询
- 在一个函数中,我有一个未捕获的语法错误:意外的标记else
- 检查一个元素是否有一个类与另一个类总是返回true
- 我有一个用幻灯片制作的网页,但幻灯片会在屏幕上移动
- 我制作html网站的一小部分——我有一个javascript部分
- Javascript动态表,每个单元格都有一个onmouse事件
- 如何让我的网站上的WEBP图像加载在morzilla firefox中有一个可能的解决方案吗?如果是,那么如何