javascript - 如何从 jquery 更新 Controller 变量?

标签 javascript jquery angularjs

我有一个日期选择器小部件,我想将选择的日期传递给 Controller ​​。在我看来,我有这个脚本片段:

        <div id="datepicker"></div>
        <script type="text/javascript">
        $('#datepicker').datepicker();
        $('#datepicker').datepicker()
        .on('changeDate', function(ev){

          alert(ev.date);
        });
        </script>

如何将这个“ev.date”发送到 Controller ?

我希望它影响 Controller 变量,这样这个变化就会被一个指令获取,并在指令中修改 dom。

最佳答案

你可以这样做:

$('#datepicker').datepicker()
  .on('changeDate', function(ev){
     //get a hold of controller and scope
     var element = angular.element($('#datepicker'));
     var controller = element.controller();
     var scope = element.scope();

     //as this happends outside of angular you probably have to notify angular of the change by wrapping your function call in $apply
     scope.$apply(function(){
       scope.updateDateFunction(ev.date);
     });
 });

参见:http://docs.angularjs.org/api/angular.element

关于javascript - 如何从 jquery 更新 Controller 变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16886222/

相关文章:

javascript - Messenger Extensions Javascript SDK 错误 2071011

grails - 如何将具有两个提交按钮的表单提交给Grails中的两个不同的 Controller 操作

javascript - chrome 扩展在加载 dom 之前注入(inject)动态 css

javascript - jQuery 防止用户双击或多次单击时执行单击事件

javascript - Chrome 在触摸板上点击会触发 mouseleave

javascript - 如何在 cookie JavaScript 中添加图片?

javascript - 在填充 $scope 数组之前调用的函数

django - 我如何告诉 grunt-usemin 忽略 Django 的静态模板标签?

javascript - UI 路由器的模拟别名状态

javascript - 如何通过另一个函数有选择地移动一个函数中的所有 Canvas 操作