输入类型编号失败,为零

时间:2016-08-26 17:11:12

标签: javascript angularjs

我有以下Dim query = _ From m In db.DeviceModels.AsEnumerable() Join c In db.Comp.AsEnumerable() On c.Field(Of String)("make") Equals m.Field(Of String)("make") And c.Field(Of String)("series") Equals m.Field(Of String)("series") Select New With { .make = m.Field(Of String)("make"), _ .series = m.Field(Of String)("series"), _ .model = m.Field(Of String)("model"), _ .oem = c.Field(Of String)("oem") _ } 字段和input函数,当数字从零开始时触发时失败。

ng-change

我输入时的以下号码失败<input type="number" ng-model="num" ng-change="confirm(num, 9)" /> function confirm = function(value, length) { if (!value) return false; $scope.val = ("" + value).length !== length; };

1 个答案:

答案 0 :(得分:2)

从数学上讲,数字不能有前导零。在JS中,在整数上放置前导0等同于解析八进制或基数为8。

var num = 011111111;
//is the same as
parseInt(011111111, 8);
//equals 2396745

实际上你想要一个十进制解析,它是10的基数。为了保持你的前导零,你必须确保输入是一个字符串,或者删除它并做你自己的解析来添加它如果检测到的话。