2012-06-21 2 views
0

Dans JS/jQuery, j'ai besoin de supprimer un code d'intégration YouTube pour afficher uniquement la valeur SRC. Comment est-ce possible?jQuery - Obtenir une partie d'une chaîne

Le code embed, par exemple:

string = "<iframe width="630" height="354" src="https://www.youtube.com/embed/NYjPglsyYZA?rel=0" frameborder="0" allowfullscreen></iframe>" 

Je cherche à saisir tout entre src=" et ". Je pense que peut-être une expression régulière le fera mais pas trop sûr ...

Toutes les suggestions seraient grandes.

+2

Donc vous avez ce HTML comme une chaîne? Ou quoi? –

+0

@FelixKling: Doh! J'ai oublié la partie de corde! Édité. – TheCarver

+0

@PaparazzoKid ajouté à partir d'une version de chaîne à ma réponse – artlung

Répondre

4

essayer:

var str='<iframe width="630" height="354" src="https://www.youtube.com/embed/NYjPglsyYZA?rel=0" frameborder="0" allowfullscreen></iframe>'; 
var src = $(str).attr("src"); 
+0

Vraiment désolé compagnon. J'ai oublié une partie clé de ma question. Le code d'intégration est en fait une chaîne, pas un élément. – TheCarver

+0

Nice one! C'est vraiment chouette et simple, merci un million :) – TheCarver

+0

@PaparazzoKid heureux je pourrais vous aider – mgraph

-1

http://www.w3schools.com/jsref/jsref_match.asp

Essayez cette

var str='<iframe width="630" height="354" src="https://www.youtube.com/embed/NYjPglsyYZA?rel=0" frameborder="0" allowfullscreen></iframe>'; 
var n=str.match(/src="(.*)"/); 
var result = n.substring(5,n.length()-1); 
2

En jQuery:

$('iframe:first').attr('src'); 

En JavaScript plaine:

document.getElementsByTagName('iframe')[0].src; 

MISE À JOUR

A partir d'une chaîne, en utilisant jQuery:

string = '<iframe width="630" height="354" src="https://www.youtube.com/embed/NYjPglsyYZA?rel=0" frameborder="0" allowfullscreen></iframe>'; 
var src = $(string).attr('src'); 

Et sans jQuery:

string = '<iframe width="630" height="354" src="https://www.youtube.com/embed/NYjPglsyYZA?rel=0" frameborder="0" allowfullscreen></iframe>'; 
var div = document.createElement('div'); 
div.innerHTML = string; 
var src = div.firstChild.src; 

alert(src); 

Questions connexes