tfeserver : Blog de tfe

Catégorie javascript - posté le 03/08/09 23:05:35

Ayant du passer quelques temps sur internet pour trouver la solution, je me permets d'écrire un petit billet sur la solution pour utiliser xpath avec javascript.

L'idée est de créer 3 fonctions génériques qui fonctinneront  indépendemment du navigateur.
  • xpath (requete)
  • xpathItem (recupere un resultat)
  • xpathLength (recuper le nombre de résultats trouvés)


    // GetXPath 
    // Cross browser
    function xpath(path)
    {   
        if(this.xmlDoc.evaluate)
        {   
        return this.xmlDoc.evaluate(
            this.prefix+path,
            this.xmlDoc, 
            null, 
            XPathResult.ORDERED_NODE_SNAPSHOT_TYPE , 
            null 
        );  
        }   
        else
        {   
            return this.xmlDoc.selectNodes(this.prefix+path);
        }   
    },  

    // XPath result item
    // Cross browser
    function xpathItem(elt, i)
    {   
        if(elt.snapshotLength)
        {   
            return elt.snapshotItem(i);
        }   
        return elt[i];
    },  

    // XPath result length
    // Cross browser
    function xpathLength(elt)
    {   
        if(elt.snapshotLength)
        {   
            return elt.snapshotLength
        }   
        return elt.length;
    },  



Comment utiliser ces fonctions?
var resultats = xpath('/MON/CHEMIN[@monparametre=\'valeur\']');

for(var i= 0; i< xpathlength(resultats); i++)
{
  // on utilise ici le résultat avec
  // xpathItem(resultats,i);
}

0 commentaire(s) javascript xpath