Как изменять значения radio в зависимости от выбора в select в ZeroBlock в Tilda
Теплица Свёколка

Как изменять значения radio в зависимости от выбора в select в ZeroBlock в Tilda

1
Создали ZeroBlock и форму в нём
2
В форме создали поля и дали им имена:
Длина - dropdown - length_strelka
Снеговая нагрузка - nagruzka
Материал - question with answer - material_strelka
3
Добавили код на страницу в блок Другое - Т123
В код занесли изменяемый прайс
/*2метра*/ '2': [{"mat1":10400},{"mat2":14600},{"mat3":10800}],
/*4метра*/ '4': [{"mat1":17800},{"mat2":21850},{"mat3":16200}],
/*6метров*/ '6': [{"mat1":24300},{"mat2":29740},{"mat3":22450}],
/*8метров*/ '8': [{"mat1":33200},{"mat2":42350},{"mat3":33890}]
Библиотека для примера
<script>
$( document ).ready(function() {
var place='';
 var priceSrtelka = {
 /*2метра*/   '2': [{"mat1":10400},{"mat2":14600},{"mat3":10800}],
 /*4метра*/   '4': [{"mat1":17800},{"mat2":21850},{"mat3":16200}],
 /*6метров*/  '6': [{"mat1":24300},{"mat2":29740},{"mat3":22450}],
 /*8метров*/  '8': [{"mat1":33200},{"mat2":42350},{"mat3":33890}]
};
 $(".tn-atom__form").on('change', 'select[name="length_strelka"]', function() {      
       place = $(this).val(); //place= $(this)[0].selectedIndex; 
       if(place==''){place='2'};
       $('input[name="material_strelka"]:eq(0)').attr('data-calc-value', priceSrtelka[place][0]['mat1']);
       $('input[name="material_strelka"]:eq(1)').attr('data-calc-value', priceSrtelka[place][1]['mat2']);
       $('input[name="material_strelka"]:eq(2)').attr('data-calc-value', priceSrtelka[place][2]['mat3']);
       $('input[name="material_strelka"]').change();
 });
});    
</script>
Made on
Tilda