2010-08-12 8 views
0

J'ai une table avec des liens dans le document html et ils ressemble à quelque chose comme (premier lien est juste javascript :):obtenir des valeurs de liens dans le document html avec JavaScript et les stocker dans un tableau

javascript: 

javascript:SelectField('{a guid}','2');return false; 

javascript:SelectField('{a guid}','23');return false; 

javascript:SelectField('{a guid}','1');return false; 

javascript:SelectField('{a guid}','14');return false; 

I veux le numéro après le guid.

Mon code actuel est:

$("table").each(function(index, value) { 
    $(this).addClass("table" + index); 
}); 

var hrefs = new Array(); 
$('.table449').children().children().each(function(){ 
var link = ($(this).find('a').attr('href')); 
var linkID = link.substring(link.indexOf(",'")+2, link.indexOf("');")) 
hrefs.push(linkID); 
alert(hrefs); 
}); 

je reçois les valeurs que je veux dans un tableau, mais la première place est "j" (sans ""). Je suppose que c'est à cause de +2 après l'indexOf mais comment puis-je me débarrasser de la j? Je veux seulement les nombres dans le tableau.

Merci d'avance. Editer: ou y a-t-il un meilleur moyen d'obtenir les identifiants?

Edit2: l'alerte montre j, 1,2,4,5,7,8,10 et ainsi de suite

Répondre

0
var startIndex = link.indexOf(",'"); 
var endIndex = link.indexOf("');"); 
if (startIndex >= 0 && endIndex >= 0) { 
    var linkID = link.substring(startIndex+2, endIndex); 
    hrefs.push(linkID); 
} 
+0

grâce Fiodor, première valeur retournée est nulle si, comment puis-je me débarrasser de cela? – Peter

+0

reomove le> = et changez-le en juste> sur le startIndex> = 0 – GerManson

+0

Salut GerManson, malheureusement il retourne toujours null en premier lieu dans le tableau. Je suppose que je peux juste enlever la première place dans le tableau si. – Peter

Questions connexes