2016-05-14 7 views
1

Ich möchte eine Aktion ausführen, wenn der Benutzer ein Datum im angular-ui datetimepicker auswählt.Hinzufügen von Klickereignis bei der Datumsauswahl angular-ui bootstrap

<input type="text" class="form-control" 
     uib-datepicker-popup="{{dashctrl.format}}" 
     ng-model="dashctrl.checkOutDtDashboard" 
     is-open="dashctrl.popup2.opened" 
     datepicker-options="dashctrl.dateOptionsCheckOut" 
     ng-required="true" 
     close-text="Close" 
     alt-input-formats="dashctrl.altInputFormats" /> 

Die Steuerung ist wie: DashController as dashctrl

In dem entsprechenden Controller, wo mein Kalender heraus fällt, gibt es Termine, die ich wählen kann, und nach Auswahl des Datums, möchte ich eine Aktion auszuführen.

Es gibt bereits eine select(dt.date) Methode, die auf Datumsauswahl in der Bibliothek geschrieben wurde, aber wie verwende ich es in meinem Controller.

Ich versuchte

  1. $rootScope.select
  2. $scope.select

aber diese funktionieren nicht in meinem Code.

+1

warum Sie ng-Änderung nicht verwenden? –

Antwort

3

Sie könnten dem Eingang eine ng-Änderung zuweisen und sie einer Funktion auf Ihrem Controller zuordnen. Dies wird ausgelöst, nachdem der Benutzer ein Datum im Datumsauswahl ausgewählt hat. Es klingt nicht so, als ob Sie versuchen würden, die Funktionalität von datepicker select außer Kraft zu setzen, also sollte das funktionieren.

0

anmelden $watch in Ihrem picker ng-model in Ihrem DashController Controller:

$scope.$watch('checkOutDtDashboard', function(newDate) { 
    if (newDate) { 
     console.log("Got the new date", newDate, "or", $scope.checkOutDtDashboard); 
    } 
});