2011-11-26 11 views
11

Uso i modelli jQuery per incorporare i video YouTube inviati dall'utente. Sono in grado di recuperare l'ID del video e salvarlo nel database e tutto funziona correttamente. Tuttavia quando si cerca di incorporare il video con i modelli jQuery come segue:Incorporamento dei video di YouTube con i modelli jQuery - C#

{{if streamObj.TypeOf == 3}} 
      <object width="425" height="350" data='http://www.youtube.com/v/${VideoId}' type="application/x-shockwave-flash"> 
      <param name="src" value='http://www.youtube.com/v/${VideoId}' /></object> 
{{else}} 

ottengo il seguente errore: "NetworkError: 404 Not Found - http://www.youtube.com/v/"

${VideoId} e streamObj.TypeOf ritorno in modo corretto. Ma questo è l'errore. Cosa potrebbe causare questo? Grazie.

+0

Il messaggio di errore che mostra l'URL di YouTube manca dell'ID video ('http: // www.youtube.com/v /'). Sei sicuro che il segnaposto '$ {VideoId}' venga sostituito? –

+0

Sei sicuro che $ {VideoId} non sia una stringa vuota? –

+3

apri firebug o qualche altra console javascript per controllare se l'url viene generato dopo che la pagina è stata caricata. il tuo VideoId potrebbe essere ripristinato da qualche parte. –

risposta

2

Prova questa.

<object width="425" height="350" data='http://www.youtube.com/v/' + ${VideoId} type="application/x-shockwave-flash"> 
    <param name="src" value='http://www.youtube.com/v/' + ${VideoId} /> 
</object> 

O forse meglio.

var videoUrl = 'http://www.youtube.com/v/' + ${VideoId}; 

<object width="425" height="350" data=videoUrl type="application/x-shockwave-flash"> 
    <param name="src" value=videoUrl /> 
</object> 

credo che il tag modello nel codice non viene valutato corretly a causa del fatto che il tag modello è impostato come parte di un valore stringa js.

0

si dovrebbe ottenere il ${VideoId} di spago e utilizzare un'operazione di stringa come

var videoIdString=${videoId}; 

var urlString='http://www.youtube.com/v/' + videoIdString ; 

Perché:

in questa pagina, non ho mai visto $ {} utilizzato tra virgolette.

http://api.jquery.com/template-tag-equal/

in modo che il codice sarebbe:

var videoIdString=${videoId}; 

<object width="425" height="350" data='http://www.youtube.com/v/'+videoIdString 
type="application/x-shockwave-flash"> 
<param name="src" value='http://www.youtube.com/v/'+videoIdString /></object> 
Problemi correlati