2016-08-24 23 views
0

这里是我的控制器文件

'use strict'; 

cms.controller('homeController', function($scope, $http, $window) { 



    $scope.registerClinic = function() { 
     var dataParam={ 
       "primaryEmailId": $scope.data1.emai 
       } 
     console.log(angular.toJson(dataParam));  
    $http({ 
    url: "/cms/sign-up", 
    method: "POST", 
    headers :{'Content-Type': 'application/json','Accept': 'application/json' }, 
    data: dataParam 
    }) 

     .success(function(response) { 
    console.log(angular.toJson(response)); 


        }); 
    }; 






}); 

这里是我的HTML文件 在我的HTML文件中,有NG-模型=“data1.emai”值时 我想通过在控制器的形式来分析它,它是不会发生

<body> 

<div class="modal-dialog" style="background: rgb(255, 255, 255);"> 
    <div class="modal-body login metrial"> 


     <div class="modal-body login metrial"> 



     <div class="col-sm-6"> 
     <h4 class="modal-title">Sign up</h4> 

      <form id="loginform2" ng-submit="registerClinic()" name="loginform2" novalidate> 
         <div class="form-group"> 
          <input name="email" placeholder="Email ID" ng-class="{'invalid-field': loginform2.emai.$touched || loginform2.$submitted, 'valid-field': loginform2.emai.$valid}" 
           ng-model="data1.emai" ng-pattern="/^[a-zA-Z0-9]+[a-zA-Z0-9._][email protected][a-zA-Z0-9]+\.[a-zA-Z.]{2,}$/" type="text" required> 
           <span ng-show="loginform2.emai.$touched && loginform2.emai.$error.pattern" class="error-geni">Invalid email</span> 
      <!-- <label class="field-title">Email ID</label> --> 
         </div> 
        <div class="margin-bottom-20"> 
          <div style="width:20%" class="input-group-addon-signup"> 
           <input value="+91" disabled="" type="text"></div> 
          <div class="input-group-addon-signup"><input id="mobil" ng-class="{'invalid-field': loginform2.mobil.$touched || loginform2.$submitted, 'valid-field': loginform2.mobil.$valid}" onkeypress="return isNumber(event,'mobil');" placeholder="Mobile No" type="text" 
           ng-minlength="10" ng-maxlength="10" name="mobil" maxlength="10" ng-model="data1.mobil" ng-pattern="/^$|^[0-9X]{10}$/" required> 
           <span ng-show="loginform2.mobil.$touched && loginform2.mobil.$error.pattern" class="error-geni"> Invalid Mobile Number </span> </div> 
      <!-- <label class="field-title">Mobile No</label>--> 
        </div> 

      <div class="form-group"> 
      <input id="clinic" ng-model="data1.clinic" placeholder="Clinic Name" type="text"> 
      <!-- <label class="field-title">Clinic Name</label> --> 
      </div> 

     <select class="form-group" id="subscriptionplans" ng-model="data.Subscription" value="Subscription"> 
     <option id="optionspec">Trial Subscription</option> 
      <option value="0">Silver</option> 
      <option value="1">Gold</option> 
      <option value="1">Platinum</option> 
     </select> 

      <div class="form-group"> 
      <input name="signupPassword" id="signupPassword" placeholder="Password" ng-class="{'invalid-field': loginform2.signupPassword.$touched || loginform2.$submitted, 'valid-field': loginform2.signupPassword.$valid}" ng-model="data1.signupPassword" 
      ng-minlength="8" ng-maxlength="20" type="password" required> 
      <span ng-show="loginform2.signupPassword.$touched && loginform2.signupPassword.$error.minlength || loginform2.signupPassword.$touched && loginform2.signupPassword.$error.maxlength" class="error-geni">Password must be 8-20 characters long and must have at least one uppercase character & one number and can have special characters -_/#@</span> 
      </div> 


      <!--confirm Password--> 
      <div class="form-group"> 
      <input name="docPassword2" id="docPassword2" ng-class="{'invalid-field': loginform2.docPassword2.$touched || loginform2.$submitted, 'valid-field': loginform2.docPassword2.$valid}" placeholder="Confirm Password" 
      ng-model="data1.docPassword2" 
      class="gui-input" required ng-compare="loginform2.signupPassword" 
      ng-disabled="!loginform2.signupPassword.$valid" type="password"/> 

      <span ng-show="loginform2.docPassword2.$touched && loginform2.docPassword2.$error.compare1" class="error-geni">Password Mismatch </span> 
      </div> 


      <button type ="submit" class="btn pull-right" type="button">SIGN UP</button> 
</form> 

     </div> 
     </div> 
    </div> 



</body> 

编辑:我试图通过data1.emai访问它错误

angular.min.js:108 TypeError: Cannot read property 'emai' of undefined 
    at n.$scope.registerClinic (home-controller.js:37) 
    at fn (eval at compile (angular.min.js:212), <anonymous>:4:262) 
    at f (angular.min.js:252) 
    at n.$eval (angular.min.js:134) 
    at n.$apply (angular.min.js:135) 
    at HTMLFormElement.<anonymous> (angular.min.js:252) 
    at HTMLFormElement.c (angular.min.js:35)is saying 

我无法理解为什么我的价值不低于$范围通过HTML将在控制器

编辑,当我从输入

,它正在删除所有值..但没有找到确切的问题

+0

你有data1.emai在NG-模型属性 –

+0

还补充说,仍然无法访问 – adasdasd

回答

2

您从范围内访问这样的:

"primaryEmailId": $scope.emai 

而在模板绑定这样的说法:

ng-model="data1.emai" 

你需要有数据1对象的适用范围,使其保持一致,例如:

"primaryEmailId": $scope.data1.emai 
+0

而下面你第二个方法 这给出了一个错误 'angular.min.js:108类型错误:无法读取属性“鄂麦'在undefined at n。$ scope.registerClinic(home-controller.js:37) at fn(eval at compile(angular.min.js:212),:4:262) at f(angular.min .js:252) at n。$ eval(angular.min.js:134) at n。$ apply(angular.min.js:135) at HTMLFormElement。 (angular.min.js:252) at HTMLFormElement.c(angular.min.js:35)' – adasdasd

+0

尝试在控制器中定义它,例如$ scope.data1 = {emai:“[email protected]”}; –

0

初始化控制器$scope.data1对象,

cms.controller('homeController', function($scope, $http, $window) { 
    $scope.data1 = {}; 
    ..... 
} 

希望这有助于。

+0

仍然没有工作提供相同的错误 – adasdasd