Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Salve, Salve.....salvem-me!! heheheehehe
Preciso descobrir quantas tags <span> tem na minha página, que é dinâmica. Como elas tem sempre um id do tipo "sp_1", "sp_2"....pensei numa rotina assim
function descobreQuantos(){
if(!iniCont || iniCont==false){
var i = 0;
var iniCont = true;
}
if(document.getElementById('sp_'+i)){
i++;
proximoSP();
}else{
alert(i);
}
}
function proximoSP(){
descobreQuantos();
}
A função descobreQuantos() é chamada por um botão na página. O alert me retorna 0 e não acusa erro nenhum...
Alguém tem outro jeito de contar quantas tags SPAN (com ID) tem na página?
Só pra contextualizar:
Preciso disso pra poder gerar outras através de outra função, então teria que concatenar o resultado da contagem com a string 'sp_' pra fazer o ID dessa nova tag span
Abraços
Nussa, klaygomes....demais!!
Matou a pau! Valews mesmo
http://forum.imasters.com.br/public/style_emoticons/default/joia.gif
Só que pra atender de verdade o que eu precisava, dei uma mexida e ficou assim:
function spans(){
var a, b = [];
var y=0;
a = document.getElementsByTagName('span');
for(var x=0;x < a.length;x++){
if(document.getElementById('sp_'+x)){
b.push(a[x]);
y++;
}
}
alert(y);
}
isso pq o seu código de retornava 6 (quantidade certa de tags span), sendo que deveria retornar 4 (quantidade de tags span com id tipo 'sp_')
Abração!!!
gdx02,
Não entendi.
A função spans(), deveria retornar APENAS as spans com ID iniciado por sp_ esta condição eu verifico aqui:
if(/^sp_/.test(a[x].id)) Usando expressões regulares.
Antes de postar o código, simulei um exemplo (no Firefox) e havia saido redondo :unsure:
Mesmo assim, legal você ter conseguido por contra própria.
gdx02,
criei esta função para você:
var spans = function()
{
Ela retorna um Array com todos os spans que possuem ID que começam com 'sp_'.