2013-04-08 15 views
22

Ich habe eine Vielzahl von Beispielen für die github-Direktive gesehen, aber keine enthält eine funktionierende JSFiddle und ich konnte keine davon zum Laufen bringen. Überrascht ist dies nicht in Angular-UI zu diesem Zeitpunkt.Arbeitsbeispiel der AngularJS und Bootstrap DatePicker Direktive?

+4

ganz gute Arbeit eines hier: http://mgcrea.github.io/angular-strap/#/datepicker – charlietfl

+7

Das Problem mit kantigem-Strap ist, dass es einen ganz anderen Ansatz zu Richtlinien als die Takes Bootstrap-UI-Projekt vom AngularJS-Team bei Google. Tatsächlich neigt der Ansatz von Angular-Strap dazu, zu brechen, wenn sich die Bootstrap.js-Datei ändert, wo dies für Angular Bootstrap-UI nicht der Fall ist. – brushleaf

+0

charlietfl, vielleicht müssen die Fragen geklärt werden, aber mein Kommentar über die Architektur ist gültig und gut dokumentiert in Vergleichen zwischen Angular Bootstrap-UI und Angular-Strap. – brushleaf

Antwort

6

Nehmen wir dies in Ihrem view.html ist:

 <script type="text/javascript" src="js/bootstrap-datepicker.js"></script> 
     <div id="datepicker"></div> 
     <script type="text/javascript"> 
     $('#datepicker').datepicker().on('changeDate', function(ev){ 
      var element = angular.element($('#datepicker')); 
      var controller = element.controller(); 
      var scope = element.scope(); 

      scope.$apply(function(){ 
      scope.doSomethingWithDate(ev.date); 
      }); 
     }); 
     </script> 

Und dann in Ihrem controller.js:

$scope.doSomethingWithDate = function (date){ 
    alert(date); 
}; 

, dass es, es funktioniert :)

13

sehen Sie bitte dieses Richtlinie, ein funktionierender Kalender fiddle: http://jsfiddle.net/nabeezy/HB7LU/209/

myApp.directive('calendar', function() { 
      return { 
       require: 'ngModel', 
       link: function (scope, el, attr, ngModel) { 
        $(el).datepicker({ 
         dateFormat: 'yy-mm-dd', 
         onSelect: function (dateText) { 
          scope.$apply(function() { 
           ngModel.$setViewValue(dateText); 
          }); 
         } 
        }); 
       } 
      }; 
     }) 
+2

nicht korrekte Format in der obigen Verbindung – vinodh

+0

, aber es nicht erlaubt, Sie zu Jahr Format..oder Monat Format –

4

Ich hoffe, dass dies hilft, ich suchte nach einem einfachen Beispiel, aber ich konnte es nicht finden, fand ich aber voll von Code und Links und ich habe es gereinigt, hier ist das einfachste Beispiel von Datepicker mit eckigen Bootstrap:

--->sample page < ---

+3

Ja ändern, es funktioniert alles in Ordnung. Nur schade, dass du keinen Plunk erstellt oder deinen Code gepostet hast. Wir können _that_ es funktioniert sehen, aber nicht _how_ es funktioniert, was nicht wirklich sehr hilfreich ist :-( – Mawg

+0

seine Arbeit, können Sie bitte die jsfiddle oder Plocker für diese? –

0

Bitte überprüfen Sie jetzt. Sie haben vergessen, jquery und css darin hinzuzufügen.

Fiddle here