Перейти к содержанию
Официальный форум поддержки Simpla

Варианты товара и выор количества


Рекомендуемые сообщения

Приветствую. Есть варианты товара, которые я использую как размеры. Нужно к каждому варианту прицепить выбор количества и кнопку "в корзину". Должно получиться вот так:

post-3858-0-34833000-1425121399_thumb.png
 
Код выбора количества взял из бесплатных решений.
<!-- Выбор варианта товара -->
		<form class="variants" action="/cart">
			<table>
			{foreach $product->variants as $v}
			<tr class="variant">
				<td>
					<input id="product_{$v->id}" name="variant" value="{$v->id}" type="radio" class="variant_radiobutton" {if $product->variant->id==$v->id}checked{/if} {if $product->variants|count<2}style="display:none;"{/if}/>
				</td>
				<td>
					{if $v->name}<label class="variant_name" for="product_{$v->id}">{$v->name}</label>{/if}
				</td>
				<td>
					{if $v->compare_price > 0}<span class="compare_price">{$v->compare_price|convert}</span>{/if}
					<span class="price">{$v->price|convert} <span class="currency">{$currency->sign|escape}</span></span>
				</td>
				<td>
					<table><tr><td>
			<input type=button value="-" class="minusplus" onclick="javascript:this.form.amount.value= this.form.amount.value<=1 ? 1 :parseInt(this.form.amount.value)-1 ;">
			</td><td width="4"></td><td>
			<input type="text" style="border:1px solid #C8C7C7; height:32px; width:38px; text-align:center; font-size:11px" name="amount" value="1">
			</td><td width="4"></td><td>
			<input type=button value="+" class="minusplus" onclick="javascript:this.form.amount.value= this.form.amount.value>=1000 ? 1000 :parseInt(this.form.amount.value)+1 ;">
			</td></tr></table>
				</td>
				<td><input type="submit" class="button" value="в корзину" data-result-text="добавлено"/></td>
			</tr>
			{/foreach}
			</table>
			
		</form>
		<!-- Выбор варианта товара (The End) -->

 

Кто готов помочь и за сколько?

Изменено пользователем just_simao
Ссылка на сообщение
Поделиться на другие сайты

Если делать так, как тебе нужно, то каждому варианту нужно отдельную форму делать. А на каком этапе сейчас? Этот код уже установлен и работает?

Ссылка на сообщение
Поделиться на другие сайты
  • 10 месяцев спустя...

выложили бы решение ( 

 

ну можно было немного и подумать. как сказал Котейка, нужно для каждого варианта выводить свою форму (если по коду что написан выще) и нужно просто в цикл запихнуть ее.

 

<!-- Выбор варианта товара -->
{foreach $product->variants as $v}
<form class="variants" action="/cart">
<table>
<tr class="variant">
	<td>
		<input id="product_{$v->id}" name="variant" value="{$v->id}" type="radio" class="variant_radiobutton" checked style="display:none;"/>
	</td>
	<td>
		{if $v->name}<label class="variant_name" for="product_{$v->id}">{$v->name}</label>{/if}
	</td>
	<td>
		{if $v->compare_price > 0}<span class="compare_price">{$v->compare_price|convert}</span>{/if}
		<span class="price">{$v->price|convert} <span class="currency">{$currency->sign|escape}</span></span>
	</td>
	<td>
		<table>
			<tr>
				<td>
					<input type=button value="-" class="minusplus" onclick="javascript:this.form.amount.value= this.form.amount.value<=1 ? 1 :parseInt(this.form.amount.value)-1 ;">
				</td>
				<td width="4"></td>
				<td>
					<input type="text" style="border:1px solid #C8C7C7; height:32px; width:38px; text-align:center; font-size:11px" name="amount" value="1">
				</td>
				<td width="4"></td>
				<td>
					<input type=button value="+" class="minusplus" onclick="javascript:this.form.amount.value= this.form.amount.value>=1000 ? 1000 :parseInt(this.form.amount.value)+1 ;">
				</td>
			</tr>
		</table>
	</td>
	<td><input type="submit" class="button" value="в корзину" data-result-text="добавлено"/></td>
</tr>
</table>
</form>
{/foreach}
<!-- Выбор варианта товара (The End) -->

 

+ не забыть передать amount в ajax_cart.js

Изменено пользователем mishanya
Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...