角度动态表内联编辑

时间:2016-07-22 00:35:18

标签: javascript angularjs

我正在研究动态表,我不知道我有多少列/行,我正在尝试使用ng-include实现内联模板的内联编辑。

第一个问题:

如何在<上使用ng-include; tr>级别并包含<中的脚本td&gt ;,它甚至可能吗?我可以在<上调用ng-inlcude。 td>水平,但我想这将是巨大的开销......

第二个问题:

如何使用相同的ng-include在ng-repeat之外包含edit_btn / display_btn模板作为最后一个单元格?

        <tr ng-repeat="row in model.array" ng-include="model.isEditMode(row)">
            <td ng-repeat="(k, v) in row" ng-show="model.header[$index].display == true" class="text-center" >
                <script type="text/ng-template" id="edit">
                    <div ng-if="model.header[$index].isDisabled == true">
                        <div ng-if="model.header[$index].type == 'datetime'">
                            <input type="text" class="form-control" ng-model="model.dateTime"/>
                        </div>
                        <div ng-if="model.header[$index].type == 'string'">
                            <input type="text" class="form-control" ng-model="v"/>
                        </div>
                    </div>
                    <div ng-if="model.header[$index].isDisabled == false">
                        <div ng-if="model.header[$index].type == 'datetime'">
                            <input type="text" class="form-control" ng-model="model.dateTime" />
                        </div>
                        <div ng-if="model.header[$index].type == 'string'">
                            <input type="text" class="form-control" ng-model="v" />
                        </div>
                    </div>
                </script>
                <script type="text/ng-template" id="display">
                    <div ng-if="model.header[$index].isDisabled == true">
                        <div ng-if="model.header[$index].type == 'datetime'">
                            {{model.dateTime}}
                        </div>
                        <div ng-if="model.header[$index].type == 'string'">
                            {{v}}
                        </div>
                    </div>
                    <div ng-if="model.header[$index].isDisabled == false">
                        <div ng-if="model.header[$index].type == 'datetime'">
                            {{model.dateTime}}
                        </div>
                        <div ng-if="model.header[$index].type == 'string'">
                            {{v}}
                        </div>
                    </div>
                </script>
            </td>
            <script type="text/ng-template" id="edit_btn">
                <td>
                    <button type="button" class="btn btn-primary" ng-click="model.save(entry)">save</button>
                </td>
            </script>
            <script type="text/ng-template" id="display_btn">
                <td>
                    <button type="button" class="btn btn-primary" ng-click="model.edit(entry)">edit</button>
                </td>
            </script>
        </tr>

1 个答案:

答案 0 :(得分:0)

您可以使用Angular-xeditable,可在以下链接中找到:https://vitalets.github.io/angular-xeditable/。您可以在那里找到所需的实现。