Hello! I am creating dependent combos from JSON
; I generate this array from JPA
in turn since ORACLE
it returns an array in JSON
. I'll explain briefly: I have two tables in BDD ( cEntidad
1:N cUnidadAdministrativa
). Now what I want is that every time I select the cEntity combo I get the ENTITIES (Entity 1, Entity 2 etc) and according to their Foreign Keys I get back the ADMINISTRATIVE UNITS, example:
ENTITY 1 > (UNIADM 1 UNIADM 2 UNIADM 3)
ENTITY 2 > (UNIADM 4 UNIADM 5 UNIADM 6)
What I have programmed reads the first array and compares with the matching ones in the second, but I cycled and I think I just need to save it in an array and put it in the second combo, so that it recovers the model, greetings and I hope you can help me, Thank you
// Code goes here
var app = angular.module("app", []);
app.controller("PruebaController", function($scope) {
$scope.modelo;
$scope.selects;
$scope.cEntidad=[
{"cscEntidad":1,"chrDescripcion":"ENTIDAD 1","snActivo":1},{"cscEntidad":2,"chrDescripcion":"ENTIDAD 2","snActivo":1},{"cscEntidad":3,"chrDescripcion":"ENTIDAD 3","snActivo":1},{"cscEntidad":4,"chrDescripcion":"ENTIDAD 4","snActivo":1},{"cscEntidad":5,"chrDescripcion":"ENTIDAD 5","snActivo":1},{"cscEntidad":6,"chrDescripcion":"ENTIDAD 6","snActivo":1},{"cscEntidad":7,"chrDescripcion":"ENTIDAD 7","snActivo":1},{"cscEntidad":8,"chrDescripcion":"ENTIDAD 8","snActivo":1},{"cscEntidad":9,"chrDescripcion":"ENTIDAD 9","snActivo":1},{"cscEntidad":10,"chrDescripcion":"ENTIDAD 10","snActivo":1}
];
$scope.cUnidadAdministrativa=[
{"cscUnidadAdm":1,"chrDescripcion":"UA 1","snActivo":1,"centidad":{"cscEntidad":1,"chrDescripcion":"ENTIDAD 1","snActivo":1}},{"cscUnidadAdm":2,"chrDescripcion":"UA 2","snActivo":1,"centidad":{"cscEntidad":1,"chrDescripcion":"ENTIDAD 1","snActivo":1}},{"cscUnidadAdm":3,"chrDescripcion":"UA 3","snActivo":1,"centidad":{"cscEntidad":2,"chrDescripcion":"ENTIDAD 2","snActivo":1}},{"cscUnidadAdm":4,"chrDescripcion":"UA 4","snActivo":1,"centidad":{"cscEntidad":2,"chrDescripcion":"ENTIDAD 2","snActivo":1}},{"cscUnidadAdm":5,"chrDescripcion":"UA 5","snActivo":1,"centidad":{"cscEntidad":3,"chrDescripcion":"ENTIDAD 3","snActivo":1}},{"cscUnidadAdm":6,"chrDescripcion":"UA 6","snActivo":1,"centidad":{"cscEntidad":3,"chrDescripcion":"ENTIDAD 3","snActivo":1}},{"cscUnidadAdm":7,"chrDescripcion":"UA 7","snActivo":1,"centidad":{"cscEntidad":4,"chrDescripcion":"ENTIDAD 4","snActivo":1}},{"cscUnidadAdm":8,"chrDescripcion":"UA 8","snActivo":1,"centidad":{"cscEntidad":4,"chrDescripcion":"ENTIDAD 4","snActivo":1}},{"cscUnidadAdm":9,"chrDescripcion":"UA 9","snActivo":1,"centidad":{"cscEntidad":5,"chrDescripcion":"ENTIDAD 5","snActivo":1}},{"cscUnidadAdm":10,"chrDescripcion":"UA 10","snActivo":1,"centidad":{"cscEntidad":5,"chrDescripcion":"ENTIDAD 5","snActivo":1}}
];
$scope.getUA = function () {
//console.log("Entidad o Dependencia:" + $scope.cEntidad);
//alert("Entidad o Dependencia:"+ $scope.modelo.CEntidad);
for (var i in $scope.cUnidadAdministrativa) {
if ($scope.modelo.CEntidad === $scope.cUnidadAdministrativa[i].centidad.cscEntidad) {
//alert($scope.modelo.CEntidad);
var array = $scope.cUnidadAdministrativa[i];
console.log("Descripcion :"+ array.chrDescripcion);// Unidades Administrativas a las que le pertenecen a Entidad
//alert("selects: "+ array.chrDescripcion);
}
}
//$scope.newSelects = $scope.selects;
//alert("newSelects; "+$scope.newSelects.cscUnidadAdm);
$scope.selects = array;
return $scope.selects;
}
});
<!DOCTYPE html>
<html ng-app="app">
<head>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.2.19/angular.js"></script>
<script src="script.js"></script>
</head>
<body ng-controller="PruebaController">
<select ng-model="modelo.CEntidad" id="cscEntidad" ng-change="getUA()" ng-options="option.cscEntidad as option.chrDescripcion for option in cEntidad" >
<option value="">--Elige opcion--</option>
</select>
<select ng-model="modelo.CUnidadAdministrativa" ng-options="option.cscUnidadAdm as option.chrDescripcion for option in selects.chrDescripcion" >
<option value="">--Elige opcion--</option>
</select>
<br>
<br>
El id de la entidad seleccionada es: {{modelo.CEntidad}}
<br>
<br>
El array de la UA seleccionada es: <br>{{selects}}
</body>
</html>