假設現在有10個td的json物件,td的colspan屬性值取1-3, 現在要把它們變成td放到tr中. td的colspan為1時,tr裡放3個td,colspan為2時,tr裡放兩個td.colspan為3時,tr裡放3個td. 怎麼做到?
<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解決
隨便猜了下你的想法。 。
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('') }
用angular>ng-if解決
隨便猜了下你的想法。 。