angular 输入框自动绑定输入长串数字出错

最近发现angular在使用input输入框的ng-model绑定scope变量的时候,发现,输入长串的数字将会出错。代码如下:

<html>
<head>
    <meta charset="UTF-8">
    <title>test</title>
    <script type="text/javascript" src="../script/angular1.4.6.min.js"></script>
</head>
<body ng-app="myProject" ng-controller="test" >
    <input id="payCode" type="number" ng-model="data" ng-change="input()"/>

    <script type="text/javascript">
        var app = angular.module("myProject", []);
        app.controller("test",function($scope){
            $scope.data = "";
            $scope.input = function(){
                console.log($scope.data+"----------"+document.getElementById("payCode").value);
            };
        });
    </script>
</body>
</html>

我使用ng-change,将每一次输入后,angular的$scope.data变量值以及document.getElementById获取到的输入框的值都打印出来,效果如下:

显而易见,从第17位开始,angular自动获取的的值就出错了,而document.getElementById获取到的值依旧是正确的。我换了angular1.6.2的版本一试,依然存在这个问题,我想,这也许是angular的一个小bug,和大家一起探讨一下。

原文地址:https://www.cnblogs.com/chenyoumei/p/12049577.html

时间: 2024-10-11 06:52:38

angular 输入框自动绑定输入长串数字出错的相关文章

C 输入一串数字,去掉其中含7的和能被7整除的数

C 输入一串数字,去掉其中含7的和能被7整除的数,每个数小于10000,数字个数小于100 输入例子:1,7,56,77,87,2,45,42,97,9977 输出:1,2,45 注意:输入个数不确定,所以不能够用整形数组处理,不能以判断整形数组元素是否等于\n为结束,因为数组是整形的,\n是字符型的,是输入不进去的 所以要用字符串来处理,先把用逗号相隔的所有整数取出来,然后再对这些数进行判断输出 #include<stdio.h> #include<string.h> void

C 输入一串数字,去掉当中含7的和能被7整除的数

C 输入一串数字,去掉当中含7的和能被7整除的数,每一个数小于10000,数字个数小于100 输入样例:1,7,56,77,87,2,45,42,97,9977 输出:1,2,45 注意:输入个数不确定.所以不可以用整形数组处理.不能以推断整形数组元素是否等于\n为结束,由于数组是整形的.\n是字符型的,是输入不进去的 所以要用字符串来处理,先把用逗号相隔的全部整数取出来,然后再对这些数进行推断输出 #include<stdio.h> #include<string.h> void

Python 输入一串数字,对其排序或找寻max或min值

思考:当我们输入一串数字,使用什么函数?排序使用什么函数? 我使用的是Python 3 的input()函数,注意:input()函数的返回值始终是字符串 如果我们输入的是整数,我们需要int函数进行转化,如果是浮点型,则使用float函数转化.... 排序使用的是sort()函数,转换时还使用了map()函数,最大值利用的是max()函数,最小值是利用的min()函数,这些函数的具体用法我就不细说了,很简单 (但是这样有个问题就是输入的时候只能处理单个数字.....这个我在后面研究好后再来说一

JavaScript控制输入框中只能输入中文、数字和英文

1.问题背景 遇到这样一个问题:有一个输入框,要求只能输入中文.数字和英文(即过滤特殊字符串) 2.JS代码 function  checkUsername() { //正则表达式 var reg = new RegExp("^[a-zA-Z\d\u4E00-\u9FA5]+$"); //获取输入框中的值 var username = document.getElementById("username").value.trim(); //判断输入框中有内容 if(u

输入一串数字和空格求和C和C++实现

编写一个程序,要求用户输入一连串的数字和任意空格(作为分隔符),求和输出 #include <stdio.h> int main(int argc, const char *argv[]) { int num = 0,sum = 0; char ch; while((ch = getchar()) != '\n') { if(ch != ' ') { num = num*10+ch-'0'; } if(ch == ' ') { sum = sum +num; num = 0; } } prin

WORD文档的长串数字如何粘贴到excel

有问题,才有提高 问题描述: 现 word 文档中有好多长长的数字(如下),我需要将它们弄进 Excel 中 直接[复制],[粘贴],结果显示如下: 然后再设置单元格格式中的数字,无论选哪一个都得不到我想要的结果 经百度,知道如下知识: 1. 2. 解决办法: 步骤1: 复制Word中数据 步骤2: 选择你要插入数据的位置,设置单元格格式:[单元格格式]->[数字]->[文本]->[确定] 步骤3: 点击单元格,右键,选择[选择性粘贴] 步骤4: 弹出框中选择[文本] 完成: 来自为知笔

输入一串数字找出其中缺少的最小的两个数

Description There is a permutation without two numbers in it, and now you know what numbers the permutation has. Please find the two numbers it lose. Input There is a number Tshows there are T test cases below. (T<=10)  For each test case , the first

输入一串随机数字,然后按千分位输出。

比如输入数字串为"123456789",输出为123,456,789 #!/bin/bash read -p "输入一串数字:" num v=`echo $num| sed 's/[0-9]//g'` if [ -n "$v" ] then     echo "请输入纯数字."     exit fi length=${#num} #表示num字符串的长度 len=0 sum='' for i in $(seq 1 $leng

ACM找出一串数字是否能被分成两部分使其中一部分全部为负数,加上另一部分可以为0

Description Most financial institutions had become insolvent during financial crisis and went bankrupt or were bought by larger institutions, usually by banks. By the end of financial crisis of all the financial institutions only two banks still cont