具有动态列数的表

时间:2016-01-07 16:51:40

标签: javascript html angularjs

我有一张桌子,我在第一行显示当月 我想改变第二行中点击功能的td数。 (如果我点击下一个按钮,我会在下个月获得,第二个tr中的td数正好是本月(下个月)的数字

我做了什么:

$scope.nextMonth=function(month){
  var months = ["January","February","March","April","May","June","July","August","September","October","November","December"];
  var numMonth = months.indexOf(month);
  console.log(numMonth);
    if(numMois == 11){
      $scope.month= months[0];
    }
    else {
      $scope.month=months[numMonth+1];
    }
    $scope.nbrJrs = NbJourByMonth(numMonth,2016);
};

这是我实际拥有的屏幕截图:

result

修改

当我点击下一个按钮时,我得到了这个: next button png

正如您所看到的那样,月份变化但是td的数量指的是当月的天数没有变化!! :(

在视图中我有这个:

<table>
<thead>
<th><a href="#" onclick="previousMonth()"><</th>  
<th class="col-md-4" colspan="{{NbJourByMonth(m,year)-2}}"><center>{{month}}</center></th>
<th><a href="#" onclick="nextMonth()">></th>   
</thead> 
<tbody>  
  <td id="{{$index+1}}" ng-repeat="n in range(nbrJrs)">{{$index+1}}</td>  
</tbody>   
</table>

这是范围函数:

  $scope.range = function (count) {
        var ratings = [];

        for (var i = 0; i < count; i++) {
            ratings.push(i)
        }
        return ratings;
    }

当我点击进入下一个目标时,我可以更改月份的名称,我也会得到本月的天数,但是td的数量没有变化(我得到31 td我不知道怎么能重绘表格。) 有人能帮帮我吗?

1 个答案:

答案 0 :(得分:0)

@Akino

一个选项,你可以使TH的colspan(一个月内的天数)-2并使用Angular动态绑定。

<table>
  <th><!- Placeholder for Left Nav Button --></th>
  <th colspan="{{currentMonthDays-2}}">{{currentMonth}}</th>
  <th><!- Placeholder for Right Nav Button --></th>
  <tr>
    <td id="{{$index+1}}" ng-repeat="n in range(nbrJrs)">{{$index+1}}</td>
  </tr>
</table>

希望这有帮助!