0
我有以下的html代碼。我不希望小數點在這個輸入字段中。輸入類型編號 - 無法刪除小數點
有人可以讓我知道如何做到這一點。
<input type="number" min="0" step="1" ng-pattern="/^(0|[1-9][0-9]*)$/" ng-model="params.data" />
我有以下的html代碼。我不希望小數點在這個輸入字段中。輸入類型編號 - 無法刪除小數點
有人可以讓我知道如何做到這一點。
<input type="number" min="0" step="1" ng-pattern="/^(0|[1-9][0-9]*)$/" ng-model="params.data" />
請記住,ngPattern
只是用於驗證的形式(formName.field.$error.pattern
)領域,它仍然可以讓你鍵入一個小數點或什麼,即使你的正則表達式不匹配。
可以使用做到這一點:
我做了這個片段顯示兩種方式:
(function() {
"use strict";
angular
.module('app', ['ngMask'])
.controller('mainCtrl', mainCtrl);
function mainCtrl($scope) {
$scope.params = {};
$scope.checkNumber = function() {
if ($scope.params.data) {
$scope.params.data = $scope.params.data.replace(/\D+/, '');
}
}
}
})();
<!DOCTYPE html>
<html ng-app="app">
<head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.7/angular.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/ngMask/3.1.1/ngMask.min.js"></script>
</head>
<body ng-controller="mainCtrl">
<form name="form" novalidate>
<label for="withoutMask">Input without mask: </label>
<input type="text" id="withoutMask" ng-model="params.data" ng-change="checkNumber()">
<hr>
<label for="mask">Input with mask: </label>
<input type="text" id="mask" mask="d" repeat="15" restrict="reject" limit="false" ng-model="otherInput">
</form>
</body>
</html>
我希望它能幫助!
可能重複[javascript正則表達式不匹配一個單詞](http://stackoverflow.com/questions/6449131/javascript-regular-expression-to-not-match-a-word) –
運行焦點被取走後的功能?他們輸入093.4並轉到下一個輸入。該函數然後返回093 – austinthedeveloper
是的,這也會起作用。你能告訴我一個鏈接嗎? – Patrick