首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >表单功能在ng-if中丢失

表单功能在ng-if中丢失
EN

Stack Overflow用户
提问于 2015-11-18 10:18:53
回答 1查看 52关注 0票数 2

我有一个带有复选框的简单表单,该复选框单击该复选框从对象中删除一个属性。

这里是控制器:

代码语言:javascript
复制
app.controller('PropController', function ($scope) {
    var str = '{"meta":{"aprop":"lprop"},"props":{"gprop":12,"lprop":9,"wrop":5}}';
    $scope.filecontent = JSON.parse(str);
    $scope.delprop = false;
    $scope.propobj = $scope.filecontent.props;
    $scope.proptodel = $scope.filecontent.meta.prop;
    var mainvalue = $scope.propobj[$scope.proptodel];     
    $scope.$watch('delprop', function () {
        if ($scope.delprop == true) {
            delete $scope.propobj[$scope.proptodel]; 
        } else {
            $scope.propobj[$scope.proptodel] = mainvalue;
        }
    }); 

意见如下:

代码语言:javascript
复制
<div ng-app="SomeProperties" ng-controller="PropController">

<div ng-if="proptodel">
    there is a property to delete: {{proptodel}}
    <form><input type="checkbox" ng-model="delprop"></form>
    filecontent: {{filecontent}}
</div>

<div ng-if="!proptodel">
    there is NO property to delete
</div>

</div>

这个应用程序就在jsfiddle上。

当表单位于ng-if中时,就会出现问题。当您可以在jsfiddle中尝试时,当我从包含表单的div中删除ng-if="proptodel"时,它正常工作。对此的解释是什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-11-18 10:28:15

您需要将delprop放入对象中,以使ng-model正常工作。这意味着您的标记应该具有:

代码语言:javascript
复制
<form><input type="checkbox" ng-model="obj.delprop"></form>

您的Javascript代码应该类似于:

代码语言:javascript
复制
$scope.obj = {
    delprop: false
};

$scope.propobj = $scope.filecontent.props;
$scope.proptodel = $scope.filecontent.meta.prop;
var mainvalue = $scope.propobj[$scope.proptodel];     
$scope.$watch('obj.delprop', function () {
    if ($scope.obj.delprop == true) {
        delete $scope.propobj[$scope.proptodel]; 
    } else {
        $scope.propobj[$scope.proptodel] = mainvalue;
    }
}); 

当然,您应该为对象找到一个合适的名称,因为obj是非常糟糕和通用的;-)

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33777364

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档