允许空值 - 输入类型编号

时间:2016-06-07 19:14:45

标签: javascript angularjs validation keypress

我有以下代码。

<input ng-keypress="onlyNumbers($event)" min="0" type="number" step="1" ng-pattern="/^[0-9]{1,8}$/" ng-model="... >

现在它只接受数值。我也希望接受空值。由于数据库中存在空值,我希望它在UI中反映出来。目前我在输入处得到[Object] [Object]为null值。

$scope.onlyNumbers = function(event){   
  var keys = {
    'up': 38,
    // Other key codes
    ...
    '9':57
  };

  for(var index in keys) {
    if (!keys.hasOwnProperty(index)) continue;
    if (event.charCode==keys[index]||event.keyCode==keys[index]) {
      return; //default event
    }
  }

  event.preventDefault();
};

有谁能让我知道如何让它发挥作用?

1 个答案:

答案 0 :(得分:3)

如果删除min属性并修改ng-pattern以检查空输入怎么办?

<input ng-keypress="onlyNumbers($event)" type="number" step="1" ng-pattern="/^[0-9]{1,8}$|^$/" ng-model="... >