getNodesBy NameIndexed
Publicado por Fernando Rodrigo Bilinski 18/02/2005
[ Hits: 4.067 ]
Download getNodesByNameIndexed.js
Consegue todos os elementos que possuem o 'name' que coincida com a string ou expressão regular dada.
Semelhante a função nativa getElementsByName com o diferencial de indexar os elementos da mesma forma que seriam indexados no PHP, portanto se o nome do elemento represanta um elemento de array, ele ira retornar como uma array.
function getNodesByNameIndexed( node, name ){
var re = new RegExp( name + "[\[]([0-9]+)\]([\[]([0-9]+)\])?" );
var nodes = getNodesByName( node, re );
var nodesIndexed = new Array();
var index;
for( var i = 0; i < nodes.length; i++ ){
nome = nodes[i].getAttribute('name');
index = re.exec( nome );
if( typeof(index[3]) != "undefined" ){
aux = getNodesByNameIndexed( node, name + "[\[]"+ index[1] +"\]" );
}else{
aux = nodes[i];
}
nodesIndexed[index[1]] = aux;
}
return nodesIndexed;
}
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;
}
Script para envio de varias menssagens
Nenhum comentário foi encontrado.
Maquina modesta - a vez dos navegadores ferrarem o usuario
Fscrypt: protegendo arquivos do seu usuário sem a lentidão padrão de criptograr o disco
Faça suas próprias atualizações de pacotes/programas no Void Linux e torne-se um Contribuidor
Como rodar o Folding@home no Linux
Criando um painel de controle (Dashboard) para seu servidor com o Homepage
Configurando o Cairo Dock individualmente em ambientes diferentes na mesma maquina
Calculadoras online gratuitas para o dia a dia do usuário Linux
Utilizando a Ferramenta xcheckrestart no Void Linux
Pisando no acelerador do Linux Mint: Kernel XanMod, zRAM e Ajustes de Swap
Warsaw não é reconhecido no Google Chrome 147.0.7727.55 (1)
Meu kde connect não funciona no debian (1)









