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 :

[AJAX] Ajout input avec valeur venant de XML


Sujet :

JavaScript

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre �clair�
    Profil pro
    Inscrit en
    D�cembre 2004
    Messages
    691
    D�tails du profil
    Informations personnelles :
    �ge : 42
    Localisation : France, Paris (�le de France)

    Informations forums :
    Inscription : D�cembre 2004
    Messages : 691
    Par d�faut [AJAX] Ajout input avec valeur venant de XML
    Bonjour.

    Voici mon probleme.
    J'ai un select qui me permet de rajouter une liste d'input en javascript.
    Pour chaque input je dois aller chercher la valeure dans la BDD et l'afficher (chaque input a son ID)

    Pour ca j'envoie une requete par ajax mais du coup mes input ne s'affichent pas.

    voila mes fonctions :

    celle d'appel de l'ajax
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    function AddRow(select,table){
    	valeurSelect = document.getElementById(select).value;
    	if(document.getElementById(select).value != "" && !document.getElementById(valeurSelect)){
        	var newRow = document.getElementById(table).insertRow(-1);
        	var newCell = newRow.insertCell(0);
        	tab = valeurSelect.split(';');
        	newCell.innerHTML = tab[2] +' '+ tab[3];
     
        	for(i=0;i<12;i++){
        		ajax(tab[0],tab[1],newCell,newRow,i);
        	}
    	}
    }
    Ajax qui va cehrcher dans la bdd
    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
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
     
    function ajax(id_module,id_ressource,mois,cell,row,mois){
    	var xhr = null;
    	var reponse;
    	var xhr=null;
     
        if (window.XMLHttpRequest) { 
            xhr = new XMLHttpRequest();
        }
        else if(window.ActiveXObject){ 
        	// Internet Explorer
            try{
                xhr = new ActiveXObject("Msxml2.XMLHTTP");
            }
            catch(e){
                try{
                    xhr = new ActiveXObject("Microsoft.XMLHTTP");
                }
                catch(e1){
                    xhr = null;
                }
            }
        }
        else{
        	// XMLHttpRequest non supporté par le navigateur
            alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
        }
     
        // Envoie des donnees
    	xhr.open("POST", "index.php?module=timesheet&action=reponse&to_csv=1", true);
    	xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
        xhr.send("mod="+id_module+"&ress="+id_ressource+"&mois="+mois);
     
     
        if(xhr.readyState == 4 && xhr.status == 200) {
            /* xhr.responseXML permet d'obtenir le fichier XML
               xhr.responseText aurait retourné le fichier sous format texte */
            //response     = cleanXML(xhr.responseXML.documentElement);
            // ...
            nombreJour(xhr,id_module,id_ressource,cell,row,mois);
        }
     
    }
     
    function nombreJour(xhr,id_module,id_ressource,cell,row,mois){
    	var docXML= xhr.responseXML.documentElement;
    	var items = docXML.getElementsByTagName("nbjour")
    	//on fait juste une boucle sur chaque element "nbjour" trouvé
    	donnee = "";
    	for (i=0;i<items.length;i++){
    		donnee = items[i].firstChild.nodeValue ;
    	}
    	cellMois(id_module,id_ressource,cell,row,mois,donnee);
    }
    et ma fonction d'affichage de l'input
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
     
    function cellMois(id_module,id_ressource,cell,row,mois,nbjour){
    	id_input = 'm'+id_module+'r'+id_ressource+'d'+mois;
    	cell = row.insertCell(1);
    	cell.innerHTML = ' <input name="'+id_input+'" type="texte"  maxlength="2" value="'+nbjour+'" size="2" onkeypress="chiffres(event)" style="width:15px">';
    }

    Je tiens a preciser que si j'appel dans ma premier fonction la fonction cellMois avec comme argument nbjour a 0 ca passe le sinput on tous 0.
    Mais avec ma fonction ajax y a meme pas les input

  2. #2
    Membre �clair�
    Profil pro
    Inscrit en
    D�cembre 2004
    Messages
    691
    D�tails du profil
    Informations personnelles :
    �ge : 42
    Localisation : France, Paris (�le de France)

    Informations forums :
    Inscription : D�cembre 2004
    Messages : 691
    Par d�faut
    oups j'oubliais mon script php

    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
     
    include('../../connection.php');
    header('Content-Type: text/xml'); 
    echo "<?xml version=\"1.0\"?>\n";
    echo "<donnee>\n";
     
    $id_res = $_POST['ress'];
    $id_mod = $_POST['mod'];
    $i = $_POST['mois'];
    $year = date('Y');
     
     
    //requete
    // On verifie si update
    $query = mysql_query("SELECT nbjour FROM ".$bdd."va_travailler_sur " .
    					" WHERE id_ressource='$id_res' AND id_module='$id_mod' AND mois='$i' AND annee='$year'") OR die('Erreur!<br/>'.mysql_error());
    if(mysql_num_rows($query)>0){
    	while($res = mysql_fetch_array($query))
    		echo '<nbjour>'.$res['id'].'</nbjour>\n';
    }
    else
    	echo "<nbjour>0</nbjour>";
    echo "</exemple>\n";

Discussions similaires

  1. [XL-2010] Ajouts colonnes avec valeurs fixes et variables
    Par ericmlj78 dans le forum Macros et VBA Excel
    R�ponses: 3
    Dernier message: 03/01/2014, 11h39
  2. R�ponses: 1
    Dernier message: 11/07/2010, 13h34
  3. Garnir un input avec la valeur d'un autre input
    Par The Molo dans le forum G�n�ral JavaScript
    R�ponses: 2
    Dernier message: 20/12/2007, 15h18
  4. ajouter des input avec select
    Par nicerico dans le forum G�n�ral JavaScript
    R�ponses: 4
    Dernier message: 04/11/2006, 09h56
  5. [XSLT][XML][AJAX] Quelques problème avec le XML
    Par slasch dans le forum XSL/XSLT/XPATH
    R�ponses: 2
    Dernier message: 11/10/2006, 11h29

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