Встраивание видео YouTube с помощью шаблонов jQuery-C#
Я использую Шаблоны jQuery для встраивания пользовательских видео на YouTube. Я могу получить идентификатор видео и сохранить его в базе данных, и все работает правильно. Однако при попытке встроить видео с помощью шаблонов jQuery следующим образом:
{{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}}
Я получаю следующую ошибку: "NetworkError: 404 Not Found - http://www.youtube.com/v/"
${VideoId} и streamObj.TypeOf верните правильно. Но в этом-то и ошибка.
Что могло быть причиной этого? Спасибо.
2 ответов:
Попробуйте это.
<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>Или, возможно, лучше.
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>Я считаю, что тег шаблона в вашем коде не вычисляется корректно из-за того, что тег шаблона задается как часть строкового значения js.
Вы должны получить
${VideoId}из строки и использовать строковую операцию, такую какvar videoIdString=${videoId}; var urlString='http://www.youtube.com/v/' + videoIdString ;Потому что:
На этой странице Я никогда не видел, чтобы ${} использовался между кавычками .
Http://api.jquery.com/template-tag-equal/
Таким образом, ваш код будет:
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>
Comments