angularjs中表单项是个数组怎么办?
发布于 9 年前 作者 ystyle 6173 次浏览 最后一次编辑是 8 年前 来自 问答

表单面是个数组

大概是这样的表单, 时间可以随意多个怎么添加和修改做到一个模板里?

3 回复

给你提示下: ng-repeat(list[输入集合]) 点击+,增加list; 点击=-,splice list。

repeat可以嵌套的,试试吧。

页面大概是这样的用的ng-submit提交

<form ng-submit="submit(shift)">
        <input type="text" name="name" ng-model="shift.name" class="required">
        <div class="control-group form-inline" id="timesoltList" ng-repeat="item in shift.timesoltList">
                <label class="control-label" >班次时间段</label>
                <input type="time" ng-model="item.timeStart" class="input-small required" >
                <input type="time" ng-model="item.timeEnd" class="input-small required" >
                <i class="icon-plus" ng-click="addTimesolt"></i>
                <i class="icon-minus" ng-click="removeTimesolt"></i>
        </div>
        <button class="btn" data-dismiss="modal" aria-hidden="true">关闭</button>
        <button class="btn btn-primary" type="submit">保存</button>
</form>
$scope.submit = function(shift){
                    console.log(shift);
}

遇到的问题, 第一次弹出界面时,数组那一个字段那一部分直接没了, 这时是新增,所有没数据 第二个问题是ng-submit 提交的数组变成对象了, {id:“1111”,times:{“0”:{id:“xxx”}}}这样的了…

回到顶部