var app = angular.module('AppName', []); app.controller('MainController', [ '$scope', function ($scope) { $scope.user = { phoneNum: "" }; $scope.validCheck = { keyDown : function (e) { var key; if(window.event) key = window.event.keyCode; //IE else key = e.which; //firefox var event; if (key == 0 || key == 8 || key == 46 || key == 9){ event = e || window.event; if (typeof event.stopPropagation != "undefined") { event.stopPropagation(); } else { event.cancelBubble = true; } return; } if (key < 48 || (key > 57 && key < 96) || key > 105 || e.shiftKey) { e.preventDefault ? e.preventDefault() : e.returnValue = false; } }, keyUp : function (e) { var key; if(window.event) key = window.event.keyCode; //IE else key = e.which; //firefox var event; event = e || window.event; if ( key == 8 || key == 46 || key == 37 || key == 39 ) return; else event.target.value = event.target.value.replace(/[^0-9]/g, ""); } }; } ]);
<div ng-app="AppName" ng-controller="MainController"> <div> <p>숫자 입력 O, 한글입력 X, 영문 입력 X</p> 입력: <input type="text" name="phoneNum" ng-model="user.phoneNum" maxlength="8" ng-keydown="validCheck.keyDown(event)" ng-keyup="validCheck.keyUp(event)" required /> </div> </div>