1

ngChangeイベントを剣道の日付ピッカーにバインドしたいのですが、toolbarOptionsで定義されている日付ピッカーですが、ngChangeは機能しません。kendo.toolbarOptionsに定義されている剣道の日付ピッカーでngChangeが機能しません

$scope.toolbarOptions = { 
 
     items: [{ 
 
      template: "<label>From</label>" 
 
     }, { 
 
      template: "<input id='start' kendo-date-picker ng-model='dateString' k-ng-model='dateObject' ngChange='startChange()' />", 
 
      overflow: "never" 
 
     }]}; 
 

 
$scope.startChange = function() {console.log('changed');} 
 
    
 
function startChange() {console.log('changed');}
私のコードをチェックしてください、startChangeの両方が動作しません。 ReferenceErrorがあります:startChangeあなたはngChangeを使用している

答えて

0

が定義されていない、などのngの変更でそれを変更してください: -

$scope.toolbarOptions = { 
    items: [{ 
     template: "<label>From</label>" 
    }, { 
     template: "<input id='start' kendo-date-picker ng-model='dateString' k-ng-model='dateObject' ng-change='startChange()' />", 
     overflow: "never" 
    }]}; 

    $scope.startChange = function() {console.log('changed');} 

か、そしてJavaScript関数を呼び出したい場合は、あなたのjsの関数を定義する必要がありますそれは

angular.module("KendoDemos", [ "kendo.directives" ]) 
    .controller("MyCtrl", function($scope){ 

     $scope.toolbarOptions = { 
      items: [{ 
      template: "<label>From</label>" 
      }, { 
      template: "<input id='start' handle-change kendo-date-picker ng-model='dateString' k-ng-model='dateObject' onChange='startChange()' />", 
     overflow: "never" 
      }] 

     }; 
    }).directive('handleChange',function(){ 
    return{ 
     link:function(scope,ele,attr){ 
     //you can use this 
      //ele.on('change',function(){ 
       //alert(555) 
      //}) 
     //or 
     function startChange() {console.log('changed');} 
    } 
    } 
}); 
+0

を使用する前に、まだstartChangeはあなたがお返事のため – Allen4Tech

+0

定義されていない例外をスローし、あなたの第二の溶液を試してみました。私のコントローラは非常に大きく、toolbarOptionsには他にもたくさんのアイテムがあります。エレガントな方法はありますか? – kamlesh

+0

おかげで「ハンドルチェンジ」ディレクティブを追加し、新しい更新されたコードを試すことができます – Allen4Tech

関連する問題