getNodesByName

Publicado por Fernando Rodrigo Bilinski 18/02/2005

[ Hits: 3.452 ]

Download getNodesByName.js




Esta função se assemelha a função nativa getElementsByName, com o diferencial de estar livre dos problemas que a função nativa possue e poder pesquisar além de strings também por uma expressão regular.
A única desvantagem dela é que ela gasta mais tempo que a nativa, portanto use com moderação.

  



Esconder código-fonte

function getNodesByName(node, name){
   var nodes = new Array();
   var childs = node.childNodes;

   for( var i = 0; i < childs.length; i++ ){
      if( typeof(name) == "string" ){
         if( childs[i].nodeType != "1" )
            continue;

         if( childs[i].getAttribute('name') == name ){
            nodes.push( childs[i] );
         }
      }else if( typeof( name.test ) == "function" ){
         if( childs[i].nodeType != "1" )
            continue;

         if( name.test( childs[i].getAttribute('name') ) ){
            nodes.push( childs[i] );
         }
      }
      if( childs[i].hasChildNodes() ){
         nodes = nodes.concat( getNodesByName( childs[i], name ) );
      }
   }
   return nodes;
}

Scripts recomendados

Calculadora Javascript

Validar CPF

proteção contra cópia com alerta

Campo de pesquisa do VOL no Mozilla Firefox !!!

Mostra IP do usuário


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts