Angularjs数据与数据属性对象的绑定

时间:2013-04-17 22:59:25

标签: javascript angularjs coffeescript

我有一些json附加到页面上的数据属性。 json数据用于在angularjs中构建表。 我正在使用coffeescript和haml。

    app = angular.module("myApp", [])

    app.controller "TableCtrl", ($scope) ->
      $scope.table =  $("#mydata").data("myjson")


    #table{"ng-app"=>"myApp","ng-controller" =>"TableCtrl"}
      %table
        %tbody
          %tr{"ng-repeat"=>"(i,item) in table" }}"}
            %td {{item.name}}

页面将数据加载到表中。在页面的其他地方,数据属性的json可以由具有jquery的用户更改。如何在json数据和表之间进行双向绑定?即我希望表格在数据属性的json在本地更改时更改。

1 个答案:

答案 0 :(得分:0)

您需要告诉AngularJS观察$("#mydata").data("myjson")是否有任何更改,然后在发生更改时更新$scope.table。尝试将以下代码添加到您的控制器(抱歉,我不知道coffeescript)。

$scope.$watch(
    function () { return $("#mydata").data("myjson");}, 
    function(newJson) {
        $scope.table = newJson;
    },
    true
);