0

ngrepeat が追加されるすべての記事にコメント機能があります。追加された新しいコメントは、コメントに更新する必要があります。

<div ng-repeat="Article in Articles">
    <div class="Description">
        {{Article.Description}}
    </div>

   <div class="commentbox">
         <textarea placeholder="Share your View" ng-model="Article{{Article.Articleid}}" ></textarea>

           <div class="post">
              <a href="javascript: void(0)" ng-Click="AddComment({{Article.Articleid}});" > Article </a>
           </div>
    </div>
</div>

コメントを追加するJs関数は

  $scope.AddComment = function(ArticleID){
    $scope.Comments.push({
        ArticleID: ArticleID,
        **ReviewText: $scope.Comment130, //how to acess the model of received ArticleID**
    DateAdded:new Date()
    });

私の質問は、動的な値を ng-model に設定し、jsfunction でアクセスする方法です。

ありがとう

4

1 に答える 1

1

あなたのバインディングはどういうわけか台無しになっていると思います。このような何かがそれを行う必要があります。受け取ったオブジェクトのコンソールを監視すると、それらを使って作業を開始できます。

http://plnkr.co/edit/ugtbO2

html

<div ng-repeat="a in articles" ng-model="article">
    <div class="description">{{a.description}} (id: {{a.id}})</div>
    <div class="commentbox">
         <textarea placeholder="Share your View" ng-model="a.review"></textarea>
         <div class="post">
            <button ng-click="addComment(a)" > Submit </button>
         </div>
    </div>
</div>

js

$scope.articles = [
        {id: '1',description: 'sdfsdf', review:''},
        {id: '2',description: 'asa334', review:''},
        {id: '3',description: 'dfsdfw3r', review: ''},
        {id: '4',description: 'sdfsdf', review: ''}
    ];


$scope.addComment = function (article) {
  $scope.comments.push({
    ArticleID: article.id,
    ReviewText: article.review,
    DateAdded : new Date()
  });

  console.log($scope.comments);
};
于 2013-08-27T07:07:28.373 に答える