2016-03-05 48 views
0

$scope.UserName$scope.Password沒有從HTML輸入字段獲取值。如何獲取AngularJS範圍中的輸入值?

這裏是腳本代碼:

var cs = angular.module('csw', []);  
cs.controller('login', ['$scope', function($rootScope, $scope, $http) { 
    $scope.showLogin=true; 
    $http.post('http://localhost:8080/csw/rest/cs/admin/login?userName=' + $scope.UserName + '&password=' + $scope.Password) 
}]); 

這是HTML:

<div ng-app="csw"> 
    <!-- login --> 
    <div ng-controller="login" ng-show="showLogin" style="border: 2px solid black"> 
     <p> 
      UserName: <input type="text" ng-model="UserName" value="admin"> 
      Password: <input type="text" ng-model="Password" value="1234">   
     </p> 
     <hr/> 
    </div> 
</div> 

回答

0

你控制的聲明是不正確:

cs.controller('login',['$scope', function($rootScope, $scope, $http) { 

應該

cs.controller('login',['$rootScope', '$scope', '$http', function($rootScope, $scope, $http) { 

或者更好的,你應該只用簡單的符號,並在構建時使用ngAnnotate使你的代碼minifiable:

cs.controller('login', function($rootScope, $scope, $http) { 

您的代碼也沒有太大的意義:您使用發送用戶名HTTP時控制器被構造。目前,該範圍內還沒有用戶名。例如,這應該在一個範圍函數中,通過點擊按鈕從視圖中調用。

+0

謝謝!它的工作原理,我改變了控制器的decleration,並做了一個登錄方法,當我點擊一個按鈕 – Arthur

相關問題