各位大哥、大姐,帮我写一个文本框只能输入 数字,小数点,减号(-) 字符的正则表达式?

pokar 2003-07-28 03:54:51
各位大哥、大姐,帮我写一个文本框只能输入 数字,小数点,减号(-) 字符的正则表达式?
...全文
214 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
rongwenfeng 2003-11-03
  • 打赏
  • 举报
回复
<input type=text onClick="sefuncCheck(this)">
function sefuncCheck(obj){
var par_val = obj.value;
for(i=0; i<par_val.length; i++){
if ((par_val.substring(i, i+1)>="0" && par_val.substring(i, i+1)<="9") || (par_val.substring(i, i+1)==",") || (par_val.substring(i, i+1)=="-"))
continue;
} else {
alert("只能输入数字、点、符号");
}
}
return(true);
}
应该就可以搞定了
心云意水 2003-11-03
  • 打赏
  • 举报
回复
<input
onkeypress="return event.keyCode>=48&&event.keyCode<=57||event.keyCode==46"
onpaste="return !clipboardData.getData('text').match(/\D/)"
ondragenter="return false"
style="ime-mode:Disabled"
>
不用判断了,输入的东西满足你的要求
AgathaZ 2003-11-03
  • 打赏
  • 举报
回复
UP
Jorn 2003-11-02
  • 打赏
  • 举报
回复
/\d+|\.|\-+/
www203 2003-11-02
  • 打赏
  • 举报
回复
返回一个 Boolean 值,指明提供的值是否是保留值 NaN (不是数字)。

isNaN(numValue)
必选项 numvalue 参数为要检查是否为 NAN 的值。

说明
如果值是 NaN, 那么 isNaN 函数返回 true ,否则返回 false 。使用这个函数的典型情况是检查 parseInt 和 parseFloat 方法的返回值。

还有一种办法,变量可以与它自身进行比较。如果比较的结果不等,那么它就是 NaN 。这是因为 NaN 是唯一与自身不等的值。
qiqid 2003-09-11
  • 打赏
  • 举报
回复
我来回答吧,
<input type=text onkeyup="value=value.replace(/[^\0-9.-]/g,'');">
就是这个了。只能输入你想要的,其它的都会被替换为空。
pokar 2003-09-11
  • 打赏
  • 举报
回复
虽然问题没有解决,响应版主号召,结贴。来者有分。
cloudchen 2003-07-30
  • 打赏
  • 举报
回复
<input name="n"><input type="button" value="test" onClick="if(/[^\d.-]/g.test(n.value))alert('只能输入数字、点、符号')">
sunon 2003-07-30
  • 打赏
  • 举报
回复
UP
xuzuning 2003-07-28
  • 打赏
  • 举报
回复
[0-9.+-]+
资源下载链接为: https://pan.quark.cn/s/22ca96b7bd39 在IT行业,正则表达式是一种强大的文本处理工具,常用于匹配、查找和替换等操作。在用户界面设计中,限制用户输入格式是确保数据正确性和一致性的重要手段。例如,我们可能需要一个文本框仅允许输入数字小数点减号。通过正则表达式可以轻松实现这一需求。 首先,我们需要明确允许的字符范围:数字(0-9)、小数点(.)和减号(-)。在正则表达式中,字符集[]用于指定允许的字符集合。数字可以用[0-9]表示,小数点是.,但.在正则表达式中有特殊含义(表示任意字符),因此需要转义为\.。减号字符集中也有特殊含义(表示范围),所以也需要转义为\-。将这些组合起来,基本框架为[0-9\.-]。不过,这仅限制了单个字符输入,实际需求中我们还需要考虑连续输入的情况,比如禁止连续的减号小数点。为此,可以使用否定前瞻断言(Negative lookahead assertion),例如(?!^-)用于禁止以减号开头,(?!\.\.)用于禁止连续的小数点。 综合以上需求,正则表达式可以进一步完善为^[-+]?[0-9]*\.?[0-9]+$。其具体含义如下: ^:匹配输入的开始。 [-+]?:允许可选的加号或减号,最多出现一次。 [0-9]*:表示零个或多个数字。 \.:表示小数点,且确保只有一个。 [0-9]+:表示至少有一个数字,确保小数点后面有数字。 $:匹配输入的结束。 在前端开发中,可以通过JavaScript将该正则表达式应用于输入框的pattern属性,例如: 当用户输入不符合正则表达式字符时,浏览器会阻止提交或显示错误提示。这种正则表达式结合了字符集、量词和否定前瞻断言,能够有效限制用户输入,确保数据的合法性。在实际开发中,这种技术被广泛应用,有助于提高数据质量,避免因用户输入错误而导致的问题

87,994

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧