Возник такой вопрос. Как можно в шаблоне вставить в JS результат smarty foreach? Облазив офф источник smarty не чего не нашел…
Если кто то решал эту проблему прошу помочь…
Спасибо за ранее.
function foo() {ldelim}
… code {$varSmarty}...
{rdelim}
</script
соответственно сам скрипт не заключаем в {literal}… {/literal} а все “фигурки” в js меняем на {ldelim}{ldelim}
ript type="text/javascript">
jwplayer("container").setup({
flashplayer: "/upload/players/video/player.swf",
playlist: [
],
"playlist.position": "bottom",
"playlist.size":100,
height: 400,
width: 500
});
ript>
Сюда
playlist: [ ],
Если я правильно вас понял я должен все просто вставить это так просто.
ript type="text/javascript">
jwplayer("container").setup( {ldelim}
flashplayer: "/upload/players/video/player.swf",
playlist: [
{foreach key=tid item=file from=$files}
{$file.player}
{/foreach}
],
"playlist.position": "bottom",
"playlist.size":100,
height: 400,
width: 500
{ldelim});
ript>
Если не так то помогите поправить пожалуйста.
Спасибо за ранее.
1. элементы в массиве нужно отделять запятыми, кроме последнего
2. заполняете судя по всему строка, соответсвенно они должны быть в кавычках
как-то так наверно получится:
script type="text/javascript"> jwplayer("container").setup( {ldelim} flashplayer: "/upload/players/video/player.swf", playlist: [ {/foreach} ], "playlist.position": "bottom", "playlist.size":100, height: 400, width: 500 {ldelim}); </script
Вы пытаетесь заполнить JS-массив, но забываете о двух вещах:
1. элементы в массиве нужно отделять запятыми, кроме последнего
2. заполняете судя по всему строка, соответсвенно они должны быть в кавычках
как-то так наверно получится:
Вот что показывает после того как я сделал по вашему.
jwplayer("container").setup({ flashplayer: "/upload/players/video/player.swf", playlist: [ '' '' ], "playlist.position": "bottom", "playlist.size":100, height: 400, width: 500 });