2010-01-29 2 views
2

Juste besoin d'un petit coup de pouce car j'ai presque ce travail.Prenez l'ID de la vidéo YouTube avec Jquery & .match()

Je veux envoyer une URL à jquery et lui demander de supprimer tout l'URL de la vidéo.

Voici mon code:

var url = 'http://www.youtube.com/watch?v=bxp8NWvIeSo'; 

$results = url.match("[\\?&]v=([^&#]*)"); 

alert($results); 

    }); 

Je reçois cela comme une sortie -

v = bxp8NWvIeSo, bxp8NWvIeSo

Quand je veux seulement

bxp8NWvIeSo

?
+0

Il est de donner une liste d 'articles, un moyen facile de faire que tout est aller chercher seulement après le « = » – fmsf

Répondre

6

si vous n'êtes pas obligé d'utiliser match, vous pouvez utiliser « split »:

var getList = function(url, gkey){ 

     var returned = null; 

     if (url.indexOf("?") != -1){ 

      var list = url.split("?")[1].split("&"), 
        gets = []; 

      for (var ind in list){ 
      var kv = list[ind].split("="); 
      if (kv.length>0) 
       gets[kv[0]] = kv[1]; 
     } 

     returned = gets; 

     if (typeof gkey != "undefined") 
      if (typeof gets[gkey] != "undefined") 
       returned = gets[gkey]; 

     } 

     return returned; 

}; 

var url = 'http://www.youtube.com/watch?v=bxp8NWvIeSo'; 
$result = getList(url, "v"); 
alert($result); 
+0

Cela a bien fonctionné. même roulé dans une fonction facile à utiliser :) – wesbos

2

Tout d'abord, retirez le $ devant les résultats ... Je suppose que c'était une faute de frappe. Ensuite, remplacer

$results = url.match("[\\?&]v=([^&#]*)"); 

avec

results = url.match("[\?&]v=([^&#]*)")[1]; 

match() retourne un tableau s'il y a un match réussi. Vous obtenez actuellement le tableau entier. Ce que vous voulez, c'est le deuxième élément du tableau (match()[1]) qui est ce qui est à l'intérieur de vos parenthèses de capture.

+1

correct répondre sauf que le signe dollar est parfaitement acceptable dans un identificateur de variable JavaScript et que vous n'avez besoin d'aucune barre oblique inverse * dans * l'expression régulière. – brianpeiris

Questions connexes