2014-09-09 5 views
0

Я пытаюсь добавить DatePicker через директиву Angularjs при прохождении элемента, как показано ниже, и она не работает, но если я укажу идентификатор элемента, он отлично работает:Можно ли добавить datepicker в HTML-элемент с директивой Angularjs?

HTML:

<input id="startdate" type="text" ng-model="i.itinerary.DapartDate" date-from /> 

app.js:

не работает:

travelApp.directive('dateFrom', function() { 
    return function (scope, element, attrs) { 

     element.datepicker({ minDate: currentTime }); 
     element.change(function() { 
      currentTime = element.val(); 
     }); 

    } 
}) 

РАБОТА

travelApp.directive('dateFrom', function() { 
    return function (scope, element, attrs) { 

     $("startdate").datepicker({ minDate: currentTime }); 
     $("startdate").change(function() { 
      currentTime = $("#startdate").val(); 
     }); 

    } 
}) 

К сожалению, я не могу использовать элементы управления, потому что у меня есть массив дат начала и окончания в моем списке маршрутов, поэтому мне нужно привязать эту функцию к каждому вновь созданному элементу даты в маршрутном массиве. Пожалуйста, порекомендуйте.

ответ

1

В своем нерабочем примере вы пытаетесь позвонить по номеру .datepicker на element, вам сначала нужно сделать его объектом jQuery!

$(element).datepicker({ minDate: currentTime }); 
$(element).change(function() { 
    currentTime = element.val(); 
}); 
+0

Woks отлично! Благодарю. – superconsultant