getNodesBy NameIndexed
Publicado por Fernando Rodrigo Bilinski 18/02/2005
[ Hits: 3.881 ]
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
Formata Campo Cnpj em javascript
Nenhum comentário foi encontrado.
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Digitando underscore com "shift" + "barra de espaços"
Como ativar a lixeira e recuperar aquivos deletados em um servidor Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
estou na 22.1 e não é atualizado pra 22.4 via "sudo full-upgrade&... (1)
PIP3 - erro ao instalar módulo do mariadb para o Python (2)
converter algoritmo C++ em C? (0)