IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AngularJS Discussion :

Mettre le focus dans un input ajouté dynamiquement


Sujet :

AngularJS

  1. #1
    Membre éprouvé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2003
    Messages
    1 309
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 309
    Par défaut Mettre le focus dans un input ajouté dynamiquement
    Bonjour,

    mon application permet d'ajouter des input dynamiquement en cliquant sur un bouton "+" (fonction ajoutePalierCQ). Je n'arrive pas à mettre le focus sur le dernier input créé (je débute en angular).

    HTML
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    <div ng-repeat="palierCQ in vm.projet.paliersCQ track by $index">
    	<div class="form-inline">
    		<input type="text" class="form-control"
    			ng-model="palierCQ.palier" name="palier_{{$index}}" 
    			ng-pattern="/^\S{7}$/"
    			required style="text-transform: uppercase;"></input>
     
    			<button class="btn btn-danger" type="button"
    				ng-click="supprimePalierCQ($index)">
    				<span class="glyphicon glyphicon-minus"></span>
    			</button>
    	</div>
    </div>
    <button class="btn btn-block btn-success" type="button"
    	ng-click="ajoutePalierCQ()">
    	<span class="glyphicon glyphicon-plus"></span>
    </button>

    controler.js
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
            $scope.ajoutePalierCQ = function () {
            	if($scope.vm.projet.paliersCQ==null){
            		$scope.vm.projet.paliersCQ = [];
            	}
            	$scope.vm.projet.paliersCQ.push({});
            }
            $scope.supprimePalierCQ = function(index) {
            	$scope.vm.projet.paliersCQ.splice(index,1);
            }

  2. #2
    Membre éprouvé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2003
    Messages
    1 309
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 309
    Par défaut
    J'ai ajouté le code suivant dans ajoutePalierCQ :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
            	$timeout(function (){
            		angular.element(document.getElementById('field_palier_' + ($scope.vm.projet.paliersCQ.length -1))).focus();
                });
    Si quelqu'un voit comment faire en pur Angular (sans le getElementById), je suis preneur.

Discussions similaires

  1. impossible de mettre deux valeur dans une input
    Par mioke dans le forum Général Java
    Réponses: 4
    Dernier message: 03/11/2009, 12h22
  2. [PHP+JS] Input ajouté dynamiquement non envoyé au submit
    Par _jey_ dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 24/07/2009, 12h49
  3. Mettre un tiles dans le input d'un action-mapping
    Par arnobidul dans le forum Struts 1
    Réponses: 9
    Dernier message: 16/04/2008, 22h01
  4. Mettre en majuscules dans un input?
    Par cuber dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 14/05/2007, 20h51
  5. Mettre un intitulé dans un INPUT TEXT ?
    Par bilou95 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 24/04/2007, 13h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo