Встраивание видео 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 верните правильно. Но в этом-то и ошибка.
Что могло быть причиной этого? Спасибо.

558   2  

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

    Ничего не найдено.