1

В HTML ниже я пытаюсь установить выбранный диапазон дат в ng-модели с именем dateRange. Поле ввода вводит правильное значение, но dateRange все равно null. Что я делаю, чтобы решить эту проблему?AngularJs + DateRangePicker: моя ng-модель не получает значение входного текста при выборе диапазона дат

<!DOCTYPE html> 
 
<html> 
 
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js"></script> 
 
<script type="text/javascript" src="http://cdn.jsdelivr.net/jquery/2.1.3/jquery.min.js"></script> 
 
<script type="text/javascript" src="http://cdn.jsdelivr.net/momentjs/2.9.0/moment.min.js"></script> 
 
<script type="text/javascript" src="http://cdn.jsdelivr.net/bootstrap.daterangepicker/1/daterangepicker.js"></script> 
 
<link rel="stylesheet" type="text/css" href="http://cdn.jsdelivr.net/bootstrap/3.3.2/css/bootstrap.css" /> 
 
<link rel="stylesheet" type="text/css" href="http://cdn.jsdelivr.net/bootstrap.daterangepicker/1/daterangepicker-bs3.css" /> 
 

 
<body ng-app="testApp" ng-controller="testCtrl"> 
 

 
<p>Select Date Range:</p> 
 
<input type="text" name="daterange" id="daterange" ng-model="dateRange" /> Selected Range: {{dateRange}} 
 

 
<script> 
 
    var app = angular.module('testApp', []); 
 
    app.controller('testCtrl', function($scope, $http) { 
 
     $scope.dateRange = null; 
 
    }); 
 
</script> 
 

 
<script type="text/javascript"> 
 
    $(function() { 
 
     $('#daterange').daterangepicker(); 
 
    }); 
 
</script> 
 
</body> 
 

 
</html>

ответ

1

Try обертывание плагин в директиве, эмпирическое правило в AngularJS, а также загрузить угловой после JQuery был загружен

Markup

<input type="text" daterange name="daterange" id="daterange" ng-model="dateRange"/> 

Директива

app.directive('daterange', function(){ 
    return{ 
     link: function(scope, element){ 
      element.daterangepicker(); 
     } 
    } 
}) 

Demo Plunkr

+0

Большое спасибо за вашу помощь, мужчина !!! ты спас мой день! – herbert

+0

@herbert Рад помочь вам .. Спасибо :) Счастливое кодирование –