Angular JS截断文本并添加更多内容

时间:2013-11-24 20:48:02

标签: angularjs

我有一个ng-repeat正在输出一些<p>。我想截断文本并添加一个read more按钮,当你单击它时会扩展它。

这是我到目前为止所做的:

//NG-repeat
<div class="col-xs-4 mbm" ng-repeat="wine in wines">
    <p readMore> {{wine.copy|truncate: textLength }} 
        <a ng-click="changeLength()" class="color3"><strong>More</strong></a>
    </p>
</div>

//NG-click
$scope.changeLength = function() {
    $scope.textLength = 9999;
}

我有一个能够截断字符串长度的自定义指令。但是当尝试通过ng-click尝试修改文本长度时,我发现ng-repeat中的所有项都被修改了。

有没有办法更改单个ng-repeat项?

1 个答案:

答案 0 :(得分:8)

定位wine的{​​{1}}:

ng-click

然后只截断目标文本:

<p readMore> {{wine.copy|truncate: wine.textLength }} 
    <a ng-click="changeLength(wine)" class="color3"><strong>More</strong></a>
</p>