无法在js文件中获取angularjs datepicker模型值

时间:2017-04-04 04:57:55

标签: javascript html angularjs

我的申请中有2个日期选择器,

<div class= "row" ng-controller="DemoCtrl as ctrl">
   <div class="col-sm-4">
   <div moment-picker="ctrl.input" format="{{ctrl.format}}" >
   <input class="form-control" ng-model="ctrl.input" ng-model-      options="{          updateOn: 'blur' }"
             placeholder="Select a start date...">
             </div>
    </div>
   <div class="col-sm-4">    
              <div moment-picker="ctrl.ionput"
         format="{{ctrl.format}}" >
        <input class="form-control"
             ng-model="ctrl.ionput"
             ng-model-options="{ updateOn: 'blur' }"
             placeholder="Select a end date...">
        </div>
        </div>
    </div>

我需要在我的.js文件中获取这些日期选择器的值来进行HTTP调用,

尝试使用$ scope.input和$ scope.ctrl.input但无法获取值

1 个答案:

答案 0 :(得分:0)

由于你想从控制器做一个http请求,我相信它是一个表单。根据最佳实践,下面给出的方法更可取。

html应该像

<form ng-init="obj={}" ng-submit="doSubmit(obj)">
   <input type="text" placeholder="name" ng-model="obj.name">
   <input type="date" placeholder="Date" ng-model="obj.date">
   <input type="submit">
</form>

控制器应该像

angular.module('yourapp').controller('yourCtrl',['$scope','yourFactory',function($scope,yourFactory){
  $scope.doSubmit = function(data){
     yourFactory.submitForm(data).then(function(res){alert("Successfully   submitted the form");
     },function(err){
        alert("Error submitting form");
     });
   }
}]);

然后在工厂调用$http

所以,据我所知,如果你使用这种方法,那么你也可以轻松地使用最佳实践进入你的控制器。