Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript AngularJS:for循环和嵌套if_Javascript_Html_Angularjs - Fatal编程技术网

Javascript AngularJS:for循环和嵌套if

Javascript AngularJS:for循环和嵌套if,javascript,html,angularjs,Javascript,Html,Angularjs,我希望使用AngularJS获得类似以下HTML代码的内容: <p class="itemsperpage">Items per page: <span>20</span> <span><a href="#">40</a></span> <span><a href="#">60</a></span> <span><a href="#">Vie

我希望使用AngularJS获得类似以下HTML代码的内容:

<p class="itemsperpage">Items per page: <span>20</span> <span><a href="#">40</a></span> <span><a href="#">60</a></span> <span><a href="#">View all</a></span></p>
每页的项目数:20

其中,20仅由a包裹,因为是当前活动元素

现在使用AngularJS,我怎么能得到这样的东西:

var itemsPerPage = [20,40,60];
...
<p class="itemsperpage">Items per page:
    <span ng-repeat='i in itemsPerPage'>
        // here should print {{ i }} for the current active
        // <a href="#">{{ i }}</a> for the elements not active
    </span>
    <span><a href="#">View all</a></span>
</p>
var itemsPerPage=[20,40,60];
...
每页的项目数:
//这里应该打印当前活动的{i}}
//对于未激活的元素


是否可以使用AngularJS执行类似操作?

假设第一个元素处于活动状态。或者,为了检查条件20,您可以将
$first
替换为
20

标记

<p class="itemsperpage">Items per page:
    <span ng-repeat='i in itemsPerPage'>
        <a href="#" ng-if="$first" ng-class="{active: $first }">{{ i }}</a> 
        <span href="#" ng-if="!$first">{{ i }}</span> 
    </span>
    <span><a href="#">View all</a></span>
</p>
每页的项目: {{i}


您可以使用
ng,如果这样的话:

<span ng-repeat='i in itemsPerPage'>
    <span ng-if="active === i">{{i}}</span>
    <a    ng-if="active !== i" href="#">{{i}}</a>
</span>

即使将在包含ng-repeat的内部添加一个额外的指令,这也会起作用。如果您真的想摆脱它,您需要一个自定义指令,因此需要一个更复杂的代码。你最好能适应它。
$scope.active = 20;