如何将视图控件中的值发送到angularjs控制器..?

时间:2014-10-31 06:57:09

标签: angularjs angularjs-directive angularjs-scope

在我的Angularjs MVC应用程序中,我编写了lo-gin的代码,它接受来自两个文本框的值作为用户名&密码 我的Angularjs控制器代码工作得很好但是视图有问题

     $scope.Login = function Login(U_Name, U_PWD) {
      //Defining the $http service for  login the admin user
      $http({
          method: 'POST',
          url: '/Admin/IsAuthenticate',
          data: { User_Name: U_Name, 

              User_PWD: U_PWD }
      }).success(function (result) {

          if (result == true) {
              alert('user is valid');
          }
          else {
              alert('unauthorised access!');
          }
      })
          .error(function (error) {
              //Showing error message 
              $scope.status = 'Unable to connect' + error.message;
          });
  }

此代码在ng-click事件上执行,但不接受输入框中的值 我的观看代码如下:

  <div ng-app="angApp">
     <div ng-controller="AdminCtrl">
        <div class="admin-login">
            <h2>using angularjs</h2>
            <input type="text" id="txtUserAng" placeholder="User Name" ng-model="U_Name" />
            <input type="password" id="txtPWDAng" placeholder="Password" ng-model="U_PWD" />
            <input type="button" id="login" value="login" ng-click="Login()" />
        </div>
      </div>
   </div>

3 个答案:

答案 0 :(得分:1)

您的问题是您没有将U_Name, U_PWD变量传递给Login函数。您需要将input值传递给您的函数。

有两种方法可以实现它。

首先,将模型直接传递给

这样的功能
 <input type="button" id="login" value="login" ng-click="Login(U_Name, U_PWD)" />

第二次,使用$scope.U_Name$scope.U_PWD

$scope.Login = function() {      
    var U_Name = $scope.U_Name, 
        U_PWD = $scope.U_PWD
}

答案 1 :(得分:1)

在控制器中获取此

此示例没有设置login parametr

   $scope.Login = function Login() {
     var U_Name = $scope.U_Name;
     var U_PWD = $scope.U_PWD;
    console.log($scope.U_Name);
    console.log($scope.U_PWD);
    }

您可以设置login模型

的函数参数
<input type="button" id="login" value="login" ng-click="Login(U_Name, U_PWD)" />

答案 2 :(得分:1)

use this 

data: 
{ 
User_Name: $scope.U_Name, 
User_PWD: $scope.U_PWD 
}