2015-10-19 26 views
0

AngularJS 1.4.7我得到了下面的問題,這是形式沒有得到填充時有效AngularJS力陣列人口

<form name="myForm">  
    <input ng-model="FirstName" name="FirstName" ng-minlength="3"> 
</form> 

在我控制我,

angular.module('myApp',['$scope',function ($scope){ 
    $scope.frm={}; 
}]); 

會發生什麼,除了$ scope.frm {}僅在字段有效時填充我需要在任何情況下填充它

我該怎麼做?

感謝

+2

輸入'NG-model'在名爲'FirstName'範圍變量指向...你沒有這個變量,你必須'frm'。所以你需要將'ng-model'改爲'frm.FirstName' –

回答

0
angular.module('myApp',['$scope',function ($scope){ 
    $scope.frm={}; 
}]); 

上面的代碼是無效的。您必須定義角度module並將控制器綁定到它。

在控制器中,您可以使用object.property來綁定frm以形成。

例如。 $scope.frm.FirstName

什麼情況是,我需要填充它在任何情況下

原因$scope.frm.FirstName只填充字段中的$ scope.frm {}填充只有當現場 有效是有效的,因爲使用ng-minlength

對於在任何情況下使用$scope.frm,您可以刪除ng-minlength並檢查表單提交的長度。

angular.module('myApp', []).controller("MyCtrl", ['$scope', 
 
    function($scope) { 
 
    $scope.frm = {}; 
 
    $scope.frm.FirstName = ''; 
 
    $scope.frm.validateSubmit = function() { 
 
     if ($scope.frm.FirstName.length < 4) { 
 
     snippet.log('please enter atleast three character'); 
 
     return false; 
 
     } 
 
     //Do something if data is valid 
 
    } 
 
    } 
 
]);
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<script src="http://tjcrowder.github.io/simple-snippets-console/snippet.js"></script> 
 
<form ng-app="myApp" name="myForm" ng-controller="MyCtrl"> 
 
    <input ng-model="frm.FirstName" name="FirstName"> 
 
    <button ng-click="frm.validateSubmit()">Submit</button> 
 
</form>