Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/457.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何从jquery更新控制器变量?_Javascript_Jquery_Angularjs - Fatal编程技术网

Javascript 如何从jquery更新控制器变量?

Javascript 如何从jquery更新控制器变量?,javascript,jquery,angularjs,Javascript,Jquery,Angularjs,我有一个日期选择器小部件,我想将拾取的日期传递给控制器。我的视图中有以下脚本片段: <div id="datepicker"></div> <script type="text/javascript"> $('#datepicker').datepicker(); $('#datepicker').datepicker() .on('changeDate', function(ev

我有一个日期选择器小部件,我想将拾取的日期传递给控制器。我的视图中有以下脚本片段:

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

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

$('#datepicker')。datepicker();
$('#datepicker')。datepicker()
.on('changeDate',功能(ev){
警报(ev.日期);
});
如何将此“ev.date”发送给控制器


我想让它影响控制器变量,这样这个更改就会被一个指令接受,dom就会在指令中被修改。

您可以这样做:

$('#日期选择器')。日期选择器()
.on('changeDate',功能(ev){
//获取控制器和作用域
var element=angular.element($(“#日期选择器”);
var controller=element.controller();
var scope=element.scope();
//由于这发生在angular之外,您可能必须通过将函数调用包装在$apply中来通知angular更改
作用域$apply(函数(){
范围更新的TEFUNCTION(版本日期);
});
});

请参阅:

您可以尝试使用angular事件总线并触发事件。这告诉我什么:(我昨天才开始使用angularjs。您可以发布一个如何向控制器中的变量发送数据的示例吗?我在控制器中创建了一个
updateDateFunction
定义:
$scope.updateDateFunction=函数(日期){$scope.pickedDate=date;};
并使用了您的代码,不幸的是它不起作用,并给出了以下错误:
Object[Object Object]没有“updateDateFunction”方法。
函数没有拼写错误。您将函数放在$scope上,而不是控制器上(这是正常的,我将更新代码以适应您的结构)