【问题标题】:how to access object value in angular js如何在角度js中访问对象值
【发布时间】:2017-09-25 06:10:00
【问题描述】:

我想使用 ng-repeat 访问复选框中的对象值(即规则名称拒绝、推迟、警告...),并且当对象中的值为“Y”时显示复选框为选中状态,当值为“N”时显示为未选中状态'

<div class="form-group">
<label class="checkbox-inline" ng-repeat="rules in savedRulesData ">
<input type="checkbox" id="checkBoxed" value="{{savedRulesData}}">{{rules}}
</label>
</div>

目前我的复选框显示如图所示。

我使用控制器中的 editRules 函数打开此模型

[http://tinypic.com/r/fog2gk/9]图片链接

$scope.editRules = function(ruleTypes,client) {
        var obj=new Object();
        var self=this;
        var clientId=client.clientId;

        var responsePromise = $http.get("typesofSavedRules/"+clientId);
        responsePromise.success(function(data, status, headers, config) {
            self.savedRulesData=data.objList;   
            $scope.savedRulesData=self.savedRulesData;
        });
        responsePromise.error(function(data, status, headers, config) {
            alert("AJAX failed!");
        });

        modalInstance = $modal.open({
            templateUrl: 'myModalContent.html',
            scope: $scope,
            size:'lg'
        });
    };

【问题讨论】:

  • savedRulesData 的结构是什么?顺便说一句,您可以使用ng-true-value and ng-false-value
  • 这是一个你可以在图片链接@pro.mean中看到的对象
  • 提示:一页必须有唯一的id。并在复选框中写ng-model
  • 那个对象结构是什么?因为您正试图从对象中消耗值以使复选框成为选中/未选中的权利。?
  • 在问题中粘贴对象结构

标签: javascript html angularjs checkbox


【解决方案1】:

按照以下方法,

<div ng-repeat="value in savedRulesData">
    <label><input type="checkbox" ng-model="rule[value[0]]" ng-true-value="Y" ng-false-value="N">{{value[2]}}</label>
</div>

希望对你有帮助:)

【讨论】:

  • 感谢我使用了 ishak dubey 的方法,并且我正在使用您的模型方法。但是我试图通过控制器中的 ng-model="rules" 访问规则对象,因为我想保存经过检查的规则,然后将未检查规则的属性规则 [1]=='Y' 更改为'Y'。但我无法通过范围变量访问我的控制器中的规则对象,即 $scope.rule;
【解决方案2】:

我想你可以使用ng-checked="{{expression}}" like -

<div class="form-group">
<label class="checkbox-inline" ng-repeat="rules in savedRulesData ">
<input type="checkbox" id="checkBoxed" ng-checked="{{rules.rule=='Y'}}">{{rules}}
</label>
</div>

只要拥有rules 对象的正确属性即可。

【讨论】:

  • 谢谢,这是我需要的。但是我试图通过控制器中的 ng-model="rules" 访问规则对象,因为我想保存经过检查的规则,然后将未检查规则的属性规则 [1]=='Y' 更改为'Y'。但我无法通过范围变量访问我的控制器中的规则对象,即 $scope.rule;
猜你喜欢
  • 2017-06-15
  • 2018-09-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-09-09
  • 2022-09-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多