检查复选框获取子对象角度Js

时间:2017-07-13 07:26:26

标签: angularjs asp.net-mvc

enter image description here

我想实现一个场景,当我点击TV1 radiobutton我想让它的所有孩子都在对象中,即ProductName TV1,Number Of Channels 1。以下是我的代码

加价:

<div ng-repeat="product in ProductTypes">         
    <div ng-show="product.selected" ng-repeat="Product in product.ProductList">
      <label>
           <input type="radio" name="internetProduct{{$parent.$index}}"
               ng-model="Product" ng-value="{{Product}}" ng-click="GetValue()" />
            {{Product.ProductName}}
      </label>

      <table>
         <tr ng-repeat="(key, val) in Product">
            <td>{{key}}</td>
            <td>{{val}}</td>
         </tr>
      </table>

   </div>
</div>

控制器(js):

var app = angular.module('ProductCatalog.controllers', ['ui.bootstrap'])
.controller('OfferCtrlr', function ($scope, $http, $modal) {
      $scope.GetValue = function() {
        var a = $scope.radio;
    }
})

现在,$ scope.radio中没有任何内容。请帮助。

2 个答案:

答案 0 :(得分:3)

您可以将产品实例作为参数传递给ng-click函数调用。因此,无论何时单击单选按钮,相应的产品实例都将在您的功能中可用。下面的代码将为您提供单选按钮的实例。对复选框执行相同的操作,在检查时调用函数并传递相应的实例。(您没有为复选框提供标记)

<强> HTML

<div ng-repeat="product in ProductTypes">         
    <div ng-show="product.selected" ng-repeat="Product in product.ProductList">
      <label>
           <input type="radio" name="internetProduct{{$parent.$index}}"
               ng-model="checked" ng-value="Product" ng-click="GetValue(Product)" />
            {{Product.ProductName}}
      </label>

      <table>
         <tr ng-repeat="(key, val) in Product">
            <td>{{key}}</td>
            <td>{{val}}</td>
         </tr>
      </table>

   </div>
</div>

<强> JS

var app = angular.module('ProductCatalog.controllers', ['ui.bootstrap'])
.controller('OfferCtrlr', function ($scope, $http, $modal) {
      $scope.GetValue = function(product) {
        console.log(product);
    }
})

答案 1 :(得分:0)

好吧,加载所有父对象和子对象然后通过AngularJS显示/隐藏,通过它你将实现你的场景。