2016-01-20 70 views
0

我是新的角和我正面临一个问题。我尝试绑定我的jQuery DateTimePicker与角度,我想知道如何。 我的DateTimePicker输入值是一个字符串,我需要绑定相应的Date对象与我的角度变量。AngularJS:链接jQuery与角

这里是我的代码:

JS

myModule.controller('myCtrl', ['$scope', function($scope) { 
    /* initialize current_date value */ 
    $scope.current_date = new Date(); 
}]); 

HTML

<input id="datetimepicker" type="text" />       

<script> 
    $(function() { 
     $('#datetimepicker').datetimepicker({ 
      onChangeDateTime:function(ct,$i){ 
       console.log(ct); 
      }      
     }); 
    }); 
</script> 

当我选择一个日期,在日期选择器,它激发了changeDateTime事件,'ct'变量是我的日期对象。我的问题是:我如何将'ct'变量与我的角度current_date绑定? 我试过ng-model =“current_date”,但它不适用于DateTimePicker,无论如何,我需要一个Date对象,而不是日期的字符串表示。

+0

需要在自定义指令中进行初始化,因此元素在代码运行时存在,并且您还可以访问作用域。大概可以找到这个插件的角度模块 – charlietfl

+0

它似乎是一个很好的接近。我可以在dom中定义一个回调函数并在我的指令中使用它来调用控制器中的函数吗? – user2733521

+0

不要考虑这个dom ......想一想在事件回调中可用的插件事件和作用域。请注意,如果您更新外部非核心角度事件中的作用域,则需要告诉角度来运行摘要 – charlietfl

回答

0

我强烈建议你看看angular-bootstrap,它有很多jQuery/bootstrap javascript编写的Angular方式,所以一般不建议将jQuery与Angular结合使用。

+0

我已经检查过,但anguar-bootstrap中唯一的datePicker不支持时间,并且我需要日期+时间选择器 – user2733521

+0

@ user2733521你看过像这样的东西:https://github.com/dalelotts/angular-bootstrap-datetimepicker或这个:https://rawgit.com/eight04/angular-datetime/master/demo.html? –