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

JavaScript Discussion :

Javascript objet et Ajax


Sujet :

JavaScript

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 6
    Points : 7
    Points
    7
    Par défaut Javascript objet et Ajax
    Salut à tous,

    Question sur l'appel de la fonction this._setPraticien(val[0], val[1]) dans le onSuccess.
    Comment faire pour que cela fonctionne?

    Erreur JS: this._setPraticien is not a function

    Merci

    Code : 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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    function Agenda(nom){
    	console.log('Creation instance Agenda');
     
    	///////////////
    	//Methode set//
    	///////////////
    	this._setListePraticien = function(){
    		$.ajax({
    			async: false,
    			type: "GET",
    			url: "scriptsPHP/agenda.php?type=praticien",
    			error:function(msg){alert( "Erreur !: " + msg );},
    			success:function(data){
    				sel = document.createElement("select");
    				sel.setAttribute('id', 'praticien');
    				sel.setAttribute('style', 'width: 190px;');
    				pra = data.split("//");
    				for(i=0;i<pra.length-1;i++){
    					val = pra[i].split("--");
    					opt = document.createElement("option");
    					opt.setAttribute('value',val[0]);
     					opt.appendChild(document.createTextNode(val[1]));
    					sel.appendChild(opt);
    					(i==0) ? this._setPraticien(val[0], val[1]) : '';
    				}
    				divprat = document.getElementById('prat');
    				this.addEvent(sel,'change',function(){this.rechargerAgenda();});
    				divprat.appendChild(sel);
    			}
    		});
    	}
     
    	this._setPraticien = function(id, nom){
    		this.idPraticien = id;
    		this.nomPraticien = nom;
    	}

  2. #2
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Bonjour,
    c'est certainement this (donc les objets qui en dépendent) qui n'est pas défini.
    Il doit falloir passer à la fonction l'objet déclencheur.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    function Agenda(obj, nom){
    	console.log('Creation instance Agenda');
    		
    	///////////////
    	//Methode set//
    	///////////////
    	obj._setListePraticien = function(){
    en l'appelant ainsi, doncA+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 02/06/2014, 21h20
  2. [AJAX] Executer Javascript chargé par Ajax
    Par Sylvain71 dans le forum Général JavaScript
    Réponses: 16
    Dernier message: 14/12/2007, 00h14
  3. Quelle bibliothèque d'objets graphiques "AJAX" ?
    Par Invité dans le forum Bibliothèques & Frameworks
    Réponses: 8
    Dernier message: 15/12/2006, 17h54
  4. [javascript] objet string + comparaison
    Par herve70 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 10/11/2006, 17h19
  5. Réponses: 6
    Dernier message: 21/07/2006, 16h48

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