首頁  >  問答  >  主體

javascript - table td單元格產生tr問題

假設現在有10個td的json物件,td的colspan屬性值取1-3, 現在要把它們變成td放到tr中. td的colspan為1時,tr裡放3個td,colspan為2時,tr裡放兩個td.colspan為3時,tr裡放3個td. 怎麼做到?

漂亮男人漂亮男人2712 天前564

全部回覆(2)我來回復

  • PHPz

    PHPz2017-05-16 13:46:37

    <tr ng-if="$scope.colspan === 1">
        <td></td>
        <td></td>
        <td></td>
    </tr>
    <tr ng-if="$scope.colspan === 2">
        <td></td>
        <td></td>
    </tr>
    <tr ng-if="$scope.colspan === 3">
        <td></td>
        <td></td>
        <td></td>
    </tr>

    用angular>ng-if解決

    回覆
    0
  • 仅有的幸福

    仅有的幸福2017-05-16 13:46:37

    隨便猜了下你的想法。 。

    var json = [{
        colspan: 1,
        title: 1
    }, {
        colspan: 2,
        title: 2
    }, {
        colspan: 3,
        title: 3
    }]
    
    document.body.innerHTML = '<table>'+ generateTr(json) +'</table>'
    
    function generateTr(json) {
        var tr = []
        for (var i = 0, l = json.length; i < l; i++) {
            var item = json[i],
                tds = []
            for (var j = 0, k = Math.ceil(3 / item.colspan); j < k; j++) {
                tds.push('<td' + (j == 0 ? ' colspan="' + item.colspan+'"' : '') + '>' + item.title + '</td>')
            }
            tr.push('<tr>' + tds.join('') + '</tr>')
        }
        return tr.join('')
    }
    

    回覆
    0
  • 取消回覆