我有一个使用此模板的指令:
<ul class="pagination pagination-sm">
<pre>{{pageurl}}</pre>
<pre>{{prevp}}</pre>
<pre>{{nextp}}</pre>
<pre>{{last}}</pre>
<pre>{{limit}}</pre>
<li ng-class="(start == 0) ? 'ng-hide' : ''"><a ng-click="getNewData('{{pageurl}}?start=0&limit={{limit}}')"><span class="glyphicon glyphicon-arrow-left"></span></a></li>
<li ng-class="(start == 0) ? 'ng-hide' : ''"><a ng-click="getNewData('{{ pageurl }}?start={{ prevp }}&limit={{ limit }}')">пред.</a></li>
<li ng-repeat="cou in count" ng-class="(start == cou.num) ? 'active' : '' || ((cou.num - (4 * limit)) > start) ? 'ng-hide' : '' || ((cou.num + (4 * limit)) < start) ? 'ng-hide' : ''">
<a ng-click="getNewData('{{ pageurl }}?start={{ cou.num }}&limit={{ limit }}')">{{ ($index + 1) }} <span class="sr-only">(current)</span></a>
</li>
<li ng-class="(start == count[count.length - 1].num) ? 'ng-hide' : ''"><a ng-click="getNewData('{{ pageurl }}?start={{ nextp }}&limit={{ limit }}')">след.</a></li>
<li ng-class="(start == count[count.length - 1].num) ? 'ng-hide' : ''"><a ng-click="getNewData('{{ pageurl }}?start={{ last }}&limit={{ limit }}')"><span class="glyphicon glyphicon-arrow-right"></span></a></li>
麻烦的是这段代码工作
<pre>{{pageurl}}</pre>
<pre>{{prevp}}</pre>
<pre>{{nextp}}</pre>
<pre>{{last}}</pre>
<pre>{{limit}}</pre>
这也是(变量处于循环中)
<li ng-repeat="cou in count" ng-class="(start == cou.num) ? 'active' : '' || ((cou.num - (4 * limit)) > start) ? 'ng-hide' : '' || ((cou.num + (4 * limit)) < start) ? 'ng-hide' : ''">
<a ng-click="getNewData('{{ pageurl }}?start={{ cou.num }}&limit={{ limit }}')">{{ ($index + 1) }} <span class="sr-only">(current)</span></a>
但是这里不行:(变量没有被......为什么?我很困惑!
<li ng-class="(start == 0) ? 'ng-hide' : ''"><a ng-click="getNewData('{{pageurl}}?start=0&limit={{limit}}')"><span class="glyphicon glyphicon-arrow-left"></span></a></li>
<li ng-class="(start == 0) ? 'ng-hide' : ''"><a ng-click="getNewData('{{ pageurl }}?start={{ prevp }}&limit={{ limit }}')">пред.</a></li>
感谢您的帮助!
答案 0 :(得分:0)
由于您使用的是pagination-sm
类,我假设您使用了Twitter引导程序。那么ng-class
应该是不同的。
<li ng-class="{'hidden': start == 0}">
但更好的是
<li ng-hide="start == 0">
我相信ng-click
你放了表达式。
<a ng-click="getNewData(pageurl + '?start=' + cou.num + '&limit=' + limit)">
但更好的是
<a ng-click="getNewData(cou.num)">
您可以在getNewData
内构建网址,因为pageurl
limit
和$scope
$scope.getNewData = function(n) {
var URL = $scope.pageurl + '?start=' + n + '&limit=' + $scope.limit;
}
这样您就可以将逻辑移动到控制器上。
试试这里测试