этот код вставил в поле-список, которое задает отображение всех скрытых...
$(document).ready(function(){ onchange_{$one_field.id}; $('#value{$one_field.id}').change(function(){ onchange_{$one_field.id}(); }); }); function onchange_{$one_field.id}() { var val4560 = document.getElementById('value4560').value; switch( val4560 ) { case '': default: { display_field(4620, 0); display_field(4680, 0); display_field(4690, 0); display_field(4700, 0); display_field(4710, 0); display_field(4720, 0); display_field(4730, 0); break; } case 'Косметология': { display_field(4620, 1); display_field(4680, 0); display_field(4690, 0); display_field(4700, 0); display_field(4710, 0); display_field(4720, 0); display_field(4730, 0); break; } case 'Дистрибьюторы': { display_field(4620, 0); display_field(4680, 0); display_field(4690, 0); display_field(4700, 0); display_field(4710, 0); display_field(4720, 0); display_field(4730, 0); break; } case 'Субдистрибьюторы': { display_field(4620, 0); display_field(4680, 0); display_field(4690, 1); display_field(4700, 0); display_field(4710, 0); display_field(4720, 0); display_field(4730, 0); break; } case 'Школы': { display_field(4620, 0); display_field(4680, 0); display_field(4690, 0); display_field(4700, 0); display_field(4710, 0); display_field(4720, 0); display_field(4730, 0); break; } case 'Магазины': { display_field(4620, 0); display_field(4680, 0); display_field(4690, 0); display_field(4700, 0); display_field(4710, 1); display_field(4720, 0); display_field(4730, 0); break; } case 'Не наши клиенты': { display_field(4620, 0); display_field(4680, 0); display_field(4690, 0); display_field(4700, 0); display_field(4710, 0); display_field(4720, 1); display_field(4730, 0); break; } case 'Частные косметологи': { display_field(4620, 0); display_field(4680, 0); display_field(4690, 0); display_field(4700, 0); display_field(4710, 0); display_field(4720, 0); display_field(4730, 1); break; } } }
таким кодом скрыл поля через их значения, до изменения значения поля-списка:
display_field({$one_field.id}, document.getElementById('valueID').value=="значения");
Поле-список, при выборе значения, открывает то одно то другое скрытое поле. Так же, в режиме добавления записи поля скрыты. И все бы ничего, НО:
при просмотре и редактировании записи почему то выходит последнее поле: 'Частные косметологи', даже если было сохранено значение в какое то другое
нужна помощь сообщества).. необходимо сделать следующее: сравнивать javascript-ом текущее значение поля-списка и разрешать отображение только скрытого поля с таким же названием. А то все поля с внесенными значениями стали отображаться в режиме просмотра и редактирования записи
Сообщение отредактировал z0ddak: 27 Ноябрь 2015 - 19:39