Thanks for the information. I'm using angular.getelement().getScope() to
access the scope. It is okay to do that.
It seems that the problem is with data binding with iframe src. I have the
following as part of a table in the first div:
<td><iframe ng-src="{{sourceObj.url}}" /></td>
Once I commented out this, everything works just fine. I'm not sure what's
wrong here.
On Wednesday, June 11, 2014 7:08:58 PM UTC-7, André Farzat wrote:
>
> I don't think your code is correct. You've created func1 and func2 outside
> the controller and you're trying to get the scope by reference in the
> jqLite instance(?). It looks really confusing.
>
> I suggest you to follow the tutorial in the docs
> <https://docs.angularjs.org/tutorial> to understand Controllers, $scope
> and two-way data binding <https://docs.angularjs.org/tutorial/step_04>.
>
> On Wednesday, June 11, 2014 6:15:54 PM UTC-3, Ning Jiang wrote:
>>
>> Hi,
>>
>> I have an AngularJS application as follows. func1 and func2 are triggered
>> seperately to update the UI. However, the UI updates when I call func1, but
>> not func2. If I remove the div corresponding to list1 then func2 does
>> update the UI. Since I'm pretty new to AngularJS, I'm assuming I missed
>> something pretty obvious. Can anyone help? Thanks!
>>
>> <html>
>> ....
>>
>> <body>
>>
>> <div ng-app>
>> <div id="divOutput" ng-controller="OutputCtrl">
>> <div ng-repeat="info in list1">
>> ....
>> </div>
>> <div ng-repeat="info in list2">
>> ...
>> </div>
>> </div>
>> </body>
>> </html>
>>
>> In the javascript, I have two functions that update the two divs
>> seperately:
>>
>> function OutputCtrl($scope, $sce) {
>> $scope.list1 = new Array();
>> $scope.list2 = new Array();
>>
>> $(scope).addToList1 = function(item) { $scope.list1.push(item1); }
>> $(scope).addToList2 = function(item) { $scope.list2.push(item1); }
>>
>> }
>>
>> func1()
>> {
>> var scope = angular.element($("#divOutput")).scope();
>> scope.$apply(function(){
>> scope.addToList1(item);
>> });
>> }
>>
>> func2()
>> {
>> var scope = angular.element($("#divOutput")).scope();
>> scope.$apply(function(){
>> scope.addToList2(item);
>> });
>> }
>>
>
--
You received this message because you are subscribed to the Google Groups
"AngularJS" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/angular.
For more options, visit https://groups.google.com/d/optout.