angularjs – 防止在输入数字中输入字母’e’和点
发布时间:2020-12-17 07:53:19 所属栏目:安全 来源:网络整理
导读:我有一个简单的输入数字,如下所示: input type="number"/ 当试图输入除数字或字母“e”以外的任何内容时,它不起作用,但是当我输入字母“e”时它起作用. 我检查了w3.org规范,并清楚地说明浮动数字可以使用常规符号(例如10.2)或科学符号(例如:1e2)键入. 所以
我有一个简单的输入数字,如下所示:
<input type="number"/> 当试图输入除数字或字母“e”以外的任何内容时,它不起作用,但是当我输入字母“e”时它起作用. 我检查了w3.org规范,并清楚地说明浮动数字可以使用常规符号(例如10.2)或科学符号(例如:1e2)键入. 所以我的问题是:有没有办法防止用户输入电子信件和点.换句话说:有没有办法让输入数字只接受整数? 我有一个Angular指令的想法,我将输入作为输入数字的属性,但我真的不知道如何使这项工作. 编辑:我想要做的是模拟我们现在尝试键入除“e”或“.”以外的字母表中的任何其他字母时所具有的相同行为.我想说的是,我不想看到输入中出现的字母(就像现在的情况一样).
你应该用指令完成它是正确的.只需创建一个指令并将其附加到输入.该指令应该监听keypress和/或keydown事件.也可能粘贴事件.如果输入的字符是’e’或点 – 调用event.preventDefault();
angular.module('app',[]) .directive('yrInteger',yrInteger); function yrInteger() { return { restrict: 'A',link: function(scope,element,attrs) { element.on('keypress',function(event) { if ( !isIntegerChar() ) event.preventDefault(); function isIntegerChar() { return /[0-9]|-/.test( String.fromCharCode(event.which)) } }) } } } <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> <div ng-app="app"> <input type="number" yr-integer /> </div> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 如何执行bash脚本作为sbt任务?
- [原创]webservice 笔记(小结) axis2 集成spring<三> 传递
- Linux系统下root用户执行passwd修改密码时报错Authenticati
- 基于Metronic的Bootstrap开发框架经验总结(1)-框架总览及
- scala – groupBy的子流是否可以依赖于它们生成的密钥?
- 通过bash连接CISCO Anyconnect VPN
- angularjs – Cordova文件插件具有错误的目录
- webservice 关于PHP的使用
- angularjs – 使用Angular Mocks测试Angular:Provider’$$
- 利用resteasy框架构建rest webservice----第二波:使用不同