PhoneGap中文网

 找回密码
 立即注册
查看: 19118|回复: 1
打印 上一主题 下一主题

angularjs 动态生成input[checkbox]时无法取到默认值

[复制链接]

1

主题

2

帖子

7

积分

新手上路

Rank: 1

积分
7
跳转到指定楼层
楼主
发表于 2015-12-31 17:21:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 sam_rainobw 于 2015-12-31 17:24 编辑

1、目的:
    通过点击按钮方式实现每次增加一行记录,其中记录中包含了一个toggle类型的chekbox单选按钮。
2、问题描述:
    checkbox单独实现(非动态实现)时,可以取到默认值,但动态实现(通过点击增加按钮实现),如果不对checkbox进行操作,则获取到的值为空(""),如果想获取false结果,必须先选真,再选为假,才能取到值。

请问大能们是否遇到过类似问题,谢谢

附代码:

<ion-view view-title="资产列表">
    <ion-content class="scroll-content has-header">
        <div ng-controller="qylsCtrl">
            <div class="row row-stretch" id="title">
                <div class="col" ng-repeat="title in titles"><span>{{title}}</span></div>
            </div>

            <form name="myForm">
                <div id="content" class="row row-wrap" ng-repeat="data in list">
                    <div class="col">
                        <label class="item  item-select">
                            <select ng-model="data.asertType">
                                <option value="">==请选择==</option>
                                <option value="0">货币资金</option>
                                <option value="1">应收票据</option>
                                <option value="2">预付账款</option>
                                <option value="3">商业服务业</option>
                                <option value="4">固定资产</option>
                                <option value="5">固定物资</option>
                                <option value="6">其他</option>
                            </select>
                        </label>
                    </div>
                    <div class="col"><input type="text" placeholder="请输入资产名称" ng-model="data.assertName"></div>
                    <div class="col">
                        <input name="jine" type="number" placeholder="请输入金额(数字类型)" ng-model="data.amount">
                        <div ng-messages="myForm.jine.$error" style="color:#803320" ng-messages-include="errors.html"></div>
                    </div>
                    <div class="col">
                        <label class="toggle toggle-balanced">
                            <input type="checkbox" checked
                                   ng-model="data.ismortgage"
                                    />
                            <div class="track">
                                <div class="handle"></div>
                            </div>
                        </label>
                    </div>
                    <div class="col">
                        <input name="rate" type="number" placeholder="请填写抵押比例" ng-model="data.mortgageRate">
                        <div ng-messages="myForm.rate.$error" style="color:#803320" ng-messages-include="errors.html"></div>
                    </div>
                    <div class="col">[<a href ng-click="list.splice($index, 1)">X</a>]</div>
                </div>
            </form>
            <div id="btnid" class="padding-left padding-right">
                <button class="button button-stable button-positive" ng-click="add()">增加记录</button>
            </div>
        </div>
    </ion-content>
</ion-view>
<script>
    var app=angular.module("assertApp",["ngMessages"]);

    app.controller("qylsCtrl", ["$scope","$http",function($scope,$http){
        $scope.list = [];
        $scope.titles=['资产类型','资产名称','金额','是否抵押','抵押比例(%)',' '];
        var fields = ['asertType','assertName','amount','ismortgage','mortgageRate'];
        var projectId = '';
        projectId = getQueryString('projectid');
        var dataName = 'asset_list';      

        $scope.add=function(){
            $scope.data = {};
            for(var j=0;j<fields.length;j++){
                $scope.data[fields[j]]="";
            }
            $scope.list.push($scope.data);
        };
    }]);
</script>
回复

使用道具 举报

1

主题

2

帖子

7

积分

新手上路

Rank: 1

积分
7
沙发
 楼主| 发表于 2015-12-31 17:25:39 | 只看该作者
明白那里的问题了: $scope.data[fields[j]]="";  这句话惹的祸
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

ionic4视频教程

Archiver|手机版|小黑屋| PhoneGap中文网 ( 京ICP备13027796号-1 )  

GMT+8, 2025-1-2 03:11 , Processed in 0.065636 second(s), 32 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表