javascript - angularjs filter: ng-options removing duplicates -
javascript - angularjs filter: ng-options removing duplicates -
is there way remove duplicated values alternative field in angularjs when getting info json. ex: have many json objects this
{ productcat: "g" productcatdesc: "general" productcode: "1" productdes: "local" subproductcode: "10" } { productcat: "g" productcatdesc: "general" productcode: "1" productdes: "foreign" subproductcode: "10" } { productcat: "g" productcatdesc: "religion" productcode: "1" productdes: "gen" subproductcode: "10" } { productcat: "g" productcatdesc: "religion" productcode: "1" productdes: "rel" subproductcode: "10" }
note: there many objects these.my task show 'productdes's according 'productcatdesc' . have hardcoded 'productcatdesc'.so ex: if take general selection alternative have show 'productdes' according it.but way have done 'productdes' read every object resulting repeating data.i want show 2types (local,foreign).how can accomplish this?
this have far
$scope.productlist = function(){ if($scope.user.productcat.name.localecompare("general")==0){ window.alert("gendata"); // $scope.productlistarr = $scope.generaldata; for(var k=0; k<$scope.generaldata.length ; k++){ $scope.productlistarr[0] = $scope.generaldata[0]; var arrayobject = $scope.generaldata[k]; if($scope.productlistarr[k].productdes.localecompare(arrayobject.productdes) != 0){ $scope.productlistarr.push(arrayobject); } } } else { window.alert("isldata"); $scope.productlistarr = $scope.islamicdata; for(var k =0; k< $scope.productlistarr.length ;k++){ var arrayobj = $scope.productlistarr[k]; if ($scope.filteredproductarray.indexof(arrayobj.productdes) == -1) { $scope.filteredproductarray.push(arrayobj); } } window.alert("here"); window.alert(filteredproductarray.length); } };
my html
<div class="form-group" ng-class="{ 'has-error' :submitted && (userform.productcat.$pristine || thirdpartyform.productcat.$invalid)}"> <label class="labelcolor"><h5><b>product category</b></h5></label> <select id="productcat" name="productcat" style="margin: auto; width:100%; " ng-model="user.productcat" ng-options="cat.name cat in productcatlist" ng-disabled="isdisabled" required> <option value="" selected="selected">--select type--</option> <optgroup label="user.productcat.name"></optgroup> </select><br> <span class="help-inline" ng-show="submitted && (userform.productcat.$pristine || userform.productcat.$invalid)" >a product category required.</span> </div> <toaster-container toaster-options="{'note': 3000, 'close-button':true}"></toaster-container> <!--product--> <div class="form-group" ng-class="{ 'has-error' :submitted && (userform.product.$pristine || thirdpartyform.product.$invalid)}"> <label class="labelcolor"><h5><b>product</b></h5></label> <select id="product" name="product" style="margin: auto; width:100%; " ng-model="user.product" ng-options="prod.name prod in productlist" ng-disabled="isdisabled" required> <option value="" selected="selected">--select type--</option> <optgroup label="user.product.name"></optgroup> </select><br> <span class="help-inline" ng-show="submitted && (userform.product.$pristine || userform.product.$invalid)" >a product required.</span> </div> <!--sub product--> <div class="form-group" ng-class="{ 'has-error' :submitted && (userform.subproduct.$pristine || thirdpartyform.subproduct.$invalid)}"> <label class="labelcolor"><h5><b>sub product</b></h5></label> <select id="subproduct" name="subproduct" style="margin: auto; width:100%; " ng-model="user.subproduct" ng-options="subprod.name subprod in subproductlist" ng-disabled="isdisabled" required> <option value="" selected="selected">--select type--</option> <optgroup label="user.subproduct.name"></optgroup> </select><br> <span class="help-inline" ng-show="submitted && (userform.subproduct.$pristine || userform.subproduct.$invalid)" >a sub product required.</span> </div> <!-- buttons --> <div class="col"style="text-align: center"> <button align="left"class="button button-block button-reset"style="display: inline-block;width:100px;text-align:center " type="reset" ng-click="submitted = false; reset();" padding-top="true">reset</button> <button class="button button-block button-positive" style="display: inline-block;width:100px " ng-click="submitted=true; "padding-top="true">submit</button> </div>
javascript json angularjs filter duplicate-removal
Comments
Post a Comment