2009-02-03 4 views
1

Comment obtenir ClientID d'un TreeNode dans un TreeView basé sur l'un de ses attributs rendus, par exemple, son attribut title (Dans mon cas c'est unique) , en utilisant soit le code côté serveur ou côté client?Comment obtenir le ClientID d'un TreeNode dans un TreeView?

Je vais avec ce code, mais cela ne fonctionne pas, aucune suggestion?

// Retrieves TreeNode ClientID. 
    function GetTreeNodeID(nodeTitle) 
    {        
     var treeNodes = document.getElementById('tvMenu').childNodes; 
     var treeLinks; 

     for(var i=0 ; i<treeNodes.length ; i++) 
     {             
      treeLinks = treeNodes[i].getElementsByTagName('a');       
      for(var j=0 ; j<treeLinks.length ; j++) 
      {           
       if(nodeTitle == treeLinks[j].title && treeLinks[j].title != ""); 
       {       
        alert("Par: " + nodeTitle); 
        alert("Title: " + treeLinks[j].title); 
        return treeLinks[j].id; 
       } 
      } 
     } 
    } 

Le code ci-dessus mentionné la question renvoie toujours l'identifiant du nœud racine, une suggestion?

Répondre

0

innerText ou innerHtml ou textContent? Quel navigateur utilisez-vous?

function GetTreeNodeID(nodeInnerText) 
     {        
      var tree = document.getElementById('tvMenu'); 
      var treeLinks = tree.getElementsByTagName('A');  

      for(var element in treeLinks) 
      {            

       if((nodeInnerText == treeLinks[element].innerText) && (treeLinks[element].innerText != "")) 
        {       
         alert("Par: " + nodeInnerText); 
         alert("innerText: " + treeLinks[element].title); 
         return treeLinks[element].id; 
        } 

      } 
     } 

Rechercher here pour un exemple de code.

+0

Navigateur: IE ou Firefox. En ce qui concerne le code: J'ai l'erreur suivante "treeNodes [élément] .getElementsByTagName n'est pas une fonction"? – Ahmed

+0

Ok désolé, j'ai changé le code. – belaz

+0

Super, ça marche maintenant correctement. Merci. – Ahmed

Questions connexes