Duda AngularJS

Intencity

Hola, estoy en un proyecto escolar aprendiendo JS, Angular y Spring MVC.
Este es mi controlador donde obtengo datos de la base de datos:

app.controller('ControllerProfesores',function($scope, $http){
      $scope.listProfesores = [];
      $scope.getProfesores = function(){
            $http.get("profesores")
            .then(function(response){
                $scope.listProfesores = response.data;
            });
      };
});

y la parte del HTML

<div class="panel-body" ng-repeat="profesor in listProfesores">
       <p id="test">{{profesor.nombre}}</p>
</div>

Ahora lo que quiero es meter esa lista (nombres de los profesores) en imágenes con función de boton, así que se me ocurrió meterlos en un array e iterarlos, pero no encuentro la forma de pasar los valores de {{profesor.nombre}} a un arreglo correctamente.

Esta es una idea de lo que quiero hacer en principio.

<script>
       var list; //{{profesor.nombre}} values
       for (var i = 0; i < list.length; i++) {
             document.write('<input type="submit" id="image-button" value=" ' + list[i] + ' " )"></input>');
       }
</script>

Este ultimo script lo tengo en el mismo documento HTML.
Saludos

APOCa

O estoy muy espeso o no te sigo.

Si te fijas estas creando un div por cada profesor.
En ese bloque es donde tienes toda la info y donde tienes que meter la img del profesor.
Y al bloque en si meterle el ng-click para ir a la ficha o al edit del profesor o lo que estes intentado hacer.

1 respuesta
Cobre

porque pones javascript en el html usando angular? donde quieras meter esos inputs usa la misma manera que usaste para listar los profesores

<div class="panel-body" ng-repeat="profesor in listProfesores">
       <input type="submit" id="image-button" value=" {{ profesor.nombre}}" )"></input>
</div>
1 respuesta
Intencity

Gracias #2 #3, he usado los dos consejos y ya pude hacer lo que quería. Tendré que verme unos tutos a fondo de JavaScript y Angular o me seguiré dando de topes con estos detalles.

Usuarios habituales

  • Intencity
  • Cobre
  • APOCa