Сообщение от laimas
|
Можно же просто по имени тега - select, если есть другие, использовать имя списка.
$('select[name=variant]').change(function(){ //if the select value gets changed
var o = $(this), im = o.find(':selected').data('picture'); //get the data from data-picture attribute
o.next().html(im ? '<img src="/files/downloads/'+im+'">' : ''); // insert image in div image-location
})
С какой целю вообще даются спискам идентификаторы?
|
Не заработал, точнее не где не выводит изображения...
а спискам даются по функционалу движка замена артикула. цены и прочее при выборе определенного варианта, нашел даже где...
/* Смена варианта в превью товара и в карточке */
$(document).on('change', '.fn_variant', function() {
var selected = $( this ).children( ':selected' ),
parent = selected.closest( '.fn_product' ),
price = parent.find( '.fn_price' ),
cprice = parent.find( '.fn_old_price' ),
sku = parent.find( '.fn_sku' ),
stock = parseInt( selected.data( 'stock' ) ),
amount = parent.find( 'input[name="amount"]' ),
camoun = parseInt( amount.val()),
units = selected.data('units');
price.html( selected.data( 'price' ) );
amount.data('max', stock);
/* Количество товаров */
if ( stock < camoun ) {
amount.val( stock );
} else if ( okay.amount > camoun ) {
amount.val( okay.amount );
}
else if(isNaN(camoun)){
amount.val( okay.amount );
}
/* Цены */
if( selected.data( 'cprice' ) ) {
cprice.html( selected.data( 'cprice' ) );
cprice.parent().removeClass( 'hidden' );
} else {
cprice.parent().addClass( 'hidden' );
}
/* Артикул */
if( typeof(selected.data( 'sku' )) != 'undefined' ) {
sku.text( selected.data( 'sku' ) );
sku.parent().removeClass( 'hidden' );
} else {
sku.text( '' );
sku.parent().addClass( 'hidden' );
}
/* Наличие на складе */
if (stock == 0) {
parent.find('.fn_not_stock').removeClass('hidden');
parent.find('.fn_in_stock').addClass('hidden');
} else {
parent.find('.fn_in_stock').removeClass('hidden');
parent.find('.fn_not_stock').addClass('hidden');
}
/* Предзаказ */
if (stock == 0 && okay.is_preorder) {
parent.find('.fn_is_preorder').removeClass('hidden');
parent.find('.fn_is_stock, .fn_not_preorder').addClass('hidden');
} else if (stock == 0 && !okay.is_preorder) {
parent.find('.fn_not_preorder').removeClass('hidden');
parent.find('.fn_is_stock, .fn_is_preorder').addClass('hidden');
} else {
parent.find('.fn_is_stock').removeClass('hidden');
parent.find('.fn_is_preorder, .fn_not_preorder').addClass('hidden');
}
if( typeof(units) != 'undefined' ) {
parent.find('.fn_units').text(', ' + units);
} else {
parent.find('.fn_units').text('');
}
});