我试图将文本区域绑定到angularjs变量,并使其反映我使用jquery在angularjs变量中对文本区域所做的更改

我试图将文本区域绑定到angularjs变量,并使其反映我使用jquery在angularjs变量中对文本区域所做的更改,jquery,angularjs,Jquery,Angularjs,我想将一个文本框绑定到angularjs变量,并将其输出到一个单独的div中呈现的html。我还想使用jquery管理该div中的数据。当我使用jquery更新时,绑定的angularjs不会更新 我有: $('#sections, #phases').change( ... $('textarea#displayData').val(html); 这很有效。当节或阶段更改时,displayData将更新 <div ng-app="myapp"> <form:textarea

我想将一个文本框绑定到angularjs变量,并将其输出到一个单独的div中呈现的html。我还想使用jquery管理该div中的数据。当我使用jquery更新时,绑定的angularjs不会更新

我有:

$('#sections, #phases').change(
...
$('textarea#displayData').val(html);
这很有效。当节或阶段更改时,displayData将更新

<div ng-app="myapp">
<form:textarea ng-model="ddata" id="displayData" path="displayData"/>

<div ng-bind-html-unsafe='ddata'>
{{ddata}}
</div></div>

{{ddata}}
这也行得通。当我修改文本区域中的displayData时,绑定的ddata变量显示我的更改

但不会发生的是,当节或阶段发生更改,并且显示数据得到更新时,ddata不会反映该更改

如果您想让角度世界了解在角度世界之外所做的更改,则必须使用

请参见此处的工作示例:

如果希望角度世界了解在角度世界之外所做的更改,则必须使用


请参见此处的一个工作示例:

将jQuery与Angular混合在一起会给您带来麻烦。你不必再费劲了,我敢打赌Angular有一个更简单的方法,但如果不了解你在jQuery函数中要完成什么,就很难给出更多建议。我正在使用jQuery从rest服务中提取json并填充表单元素(下拉列表)。我猜angular可以做到这一点,但是jquery部分已经编写好了,除了返回绑定到ddata之外,我已经做了所有的事情。以您似乎正在做的方式将jquery与angular混合会给您带来麻烦。你不必再费劲了,我敢打赌Angular有一个更简单的方法,但如果不了解你在jQuery函数中要完成什么,就很难给出更多建议。我正在使用jQuery从rest服务中提取json并填充表单元素(下拉列表)。我猜angular可以做到这一点,但是jquery部分已经编写好了,除了返回绑定到ddata之外,我什么都做了。
//jQuery world
$(function() {
    var scope = angular.element("textarea#displayData").scope();
    scope.$apply(function(){
        // angular world
        scope.ddata = html;
    });
});