Есть скрипт:
$('#pic-changer').change(function(){ //if the select value gets changed
   var imageSource = $(this).find(':selected').data('picture'); //get the data from data-picture attribute
   if(imageSource){ //if it has data
      $('#image-location').html('<img src="/files/downloads/'+imageSource+'">'); // insert image in div image-location
   } else {
      $('#image-location').html(''); //remove content from div image-location, thus removing the image
   }
})
И вывод в шаблоне
<select name="variant" id="pic-changer" class="fn_variant variant_select {if $product->variants|count == 1}hidden{/if}">
                {foreach $product->variants as $v}
                    <option value="{$v->id}" data-picture="{$v->attachment}"  data-price="{$v->price|convert}" data-stock="{$v->stock}"{if $v->compare_price > 0} data-cprice="{$v->compare_price|convert}"{/if}{if $v->sku} data-sku="{$v->sku|escape}"{/if}>{if $v->name}{$v->name|escape}{else}{$product->name|escape}{/if}</option>
               {/foreach}
            </select>
			<div id="image-location"></div>
Вот когда выводятся много товаров то на странице продукта скрипт обрабатывает только первый товар и выводит фото к нему, на других товарах только выводятся значения option но не фото, можно ли как-то заставить работать скрипт по допустим: 
<div id="image-location" value="{$v->id}" >
Или любое другое значение,  в {$v->id}  идет генерация от движка ВариантАйди.
В js полный нуб и не знаю 
 
А интересует заставить скрипт работать на всех товарах...