2016-01-20 108 views
0

我有文件與指令JS腳本沒有在角指令的模板工作

(function (angular) { 
 
    'use strict'; 
 

 
    function digest(factory) { 
 
     var directive = { 
 
      restrict: 'E', 
 
      templateUrl: '/js/app/digest/templates/digest.template.html', 
 
      scope: true, 
 
      replace: true, 
 
      controller: [ 
 
       '$scope', '$http', 
 
       function ($scope, $http) { 
 
.... 
 
       } 
 
      ] 
 
     }; 
 
     return directive; 
 
    } 
 

 
digest.$inject = ['digest.factory']; 
 
    angular.module('news').directive('maindigest', digest); 
 
})(angular);

模板

<div> 
 
<input id="datepicker"/> 
 

 
<script> 
 
     $("#datepicker").kendoDatePicker(); 
 
</script> 
 
</div>

的Index.html是哪裏那指令定義

<script src="/vendor/bower_components/angular/angular.js"></script> 
 
    <script src="/js/app/digest/digest.js"></script> 
 
    <script src="/js/app/digest/digest.directive.js"></script> 
 
    <script src="/js/app/digest/digest.factory.js"></script> 
 

 
    <link href="/vendor/bower_components/kendo-ui/styles/kendo.common.min.css" rel="stylesheet"> 
 
    <link href="/vendor/bower_components/kendo-ui/styles/kendo.default.min.css" rel="stylesheet"> 
 
    <script src="/vendor/bower_components/kendo-ui/js/jquery.min.js"></script> 
 
    <script src="/vendor/bower_components/kendo-ui/js/kendo.all.min.js"></script> 
 
</head> 
 
<body> 
 
<maindigest></maindigest> 
 
... 
 
// in here js scripts work 
 
//<input id="datepicker"/> 
 
//<script> 
 
     //$("#datepicker").kendoDatePicker(); 
 
//</script> 
 
...

可能有人幫助我,爲什麼有些JS腳本不工作到指令的模板。 我的意見是js函數不存在於指令的模板中,雖然在index.html中沒有問題

+0

由於您嘗試調用腳本的輸入在初始化過程中不存在於頁面上,因此您的kendo腳本不知道,因此可能會出現此問題。您需要研究kendoui的文檔以確定如何在頁面加載後動態添加新元素。將kendoUi標籤添加到您的問題中也可能有助於吸引其他已經處理了角度和劍道組合的用戶來查看您的問題。 – Claies

回答

0

我想你需要在腳本標記中加入type = ng-template。

或者可能爲您的指令添加kendo-date-picker屬性。

+0

請你舉個例子 – Decastrio