Показать сообщение отдельно
  #3 (permalink)  
Старый 31.07.2017, 10:52
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,791

Я бы примерно так сделал:

<div class="checkbox">
	{foreach $deliveries as $delivery}
		<input type="radio" *!*name="delivery_id"*/!* data-id="{$delivery->id}" data-title="{$delivery->name|urlencode}"/>
	{/foreach}
</div>

<h3>
	<label class="title-label"></label>
</h3>

<div class="fields">
	<input placeholder="Город" type="text" value="{$city|escape}" data-delivery="1"/>
	<input placeholder="Отделение"  type="text" value="{$address|escape}" data-delivery="1"/>
	<input placeholder="улица / дом / эт / кв." type="text" value="{$address1|escape}" data-delivery="2"/>
</div>

<script type="text/javascript">
	$(function(){
		$('.checkbox input[type="radio"]').change(function(){
			var $t=$(this),
				id=$t.attr('data-id'),
				title=decodeURIComponent($t.attr('data-title'));
				
			$('.fields input').each(function(){
				var $el=$(this);
				if($el.attr('data-delivery')!=id)
					$el.hide().removeAttr('required');
				else
					$el.show().attr('required',true);
			});
			
			$('.title-label').text(title);
		}).change();
	});
</script>

Последний раз редактировалось Nexus, 31.07.2017 в 11:14.
Ответить с цитированием