Angularjs   发布时间:2022-04-20  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了angularjs – 防止在输入数字中输入字母’e’和点大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个简单的输入数字,如下所示:
<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>

大佬总结

以上是大佬教程为你收集整理的angularjs – 防止在输入数字中输入字母’e’和点全部内容,希望文章能够帮你解决angularjs – 防止在输入数字中输入字母’e’和点所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。