Показ/скрытие полей через JavaScript
#261
Отправлено 26 Февраль 2016 - 15:20
#262
Отправлено 01 Март 2016 - 10:06
Настроил скрытие как описано на первых страницах форума, но почему-то не работает.
В список (id4880) добавил следующее:
function onchange_{$one_field.id}() { display_field(4890, document.getElementById('value{$one_field.id}').value=="GPS Трекер"); display_field(4980, document.getElementById('value{$one_field.id}').value=="SIM карта"); } addHandler(document.getElementById('value{$one_field.id}'), 'onchange', onchange_{$one_field.id});
В скрывающиеся поля:
display_field({$one_field.id}, document.getElementById('value4880').value=="GPS Трекер");
display_field({$one_field.id}, document.getElementById('value4880').value=="SIM карта");
подскажите, что не так?
#263
Отправлено 01 Март 2016 - 10:39
#264
Отправлено 01 Март 2016 - 10:49
CbCoder (01 Март 2016 - 10:39) писал:
Понял, спасибо
Сделал как описано в 186 посте, как я понял в этом варианте прописывать скрипт в скрывающиеся поля уже не нужно?
Добавил в список 4880 следующий код, но все равно поля 4890 и 4980 не скрываются:
$(document).ready(function(){ onchange_{$one_field.id}; $('#value{$one_field.id}').change(function(){ on_change{$one_field.id}(); }); }); function onchange_{$one_field.id}() { var val4880 = document.getElementById('value4880').value; switch( val4880 ) { case 'GPS Трекер': { display_field(4890, 1); display_field(4980, 0); break; } case 'SIM карта': { display_field(4890, 0); display_field(4980, 1); break; } case '': default: { display_field(4890, 0); display_field(4980, 0); } } }
Сообщение отредактировал lexer92: 01 Март 2016 - 12:03
#265
Отправлено 01 Март 2016 - 13:07
function onchange_{$one_field.id}() { var val4880 = $('#value4880').val(); switch( val4880 ) { case 'GPS Трекер': display_field(4890, 1); display_field(4980, 0); break; case 'SIM карта': display_field(4890, 0); display_field(4980, 1); break; default: display_field(4890, 0); display_field(4980, 0); break; } } $(function() { onchange_{$one_field.id}(); $('#value{$one_field.id}').change(function() { onchange_{$one_field.id}(); }); });
Поле 4880 это поле "список" или поле "связи"?
Сообщение отредактировал GoGPS: 01 Март 2016 - 13:13
#267
Отправлено 01 Март 2016 - 13:22
Если это поле связи тогда вместо GPS Трекер и SIM карта нужно прописывать их ID.
И код прописываете куда? Нужно прописывать в поле JavaScript
Сообщение отредактировал GoGPS: 01 Март 2016 - 13:24
#268
Отправлено 01 Март 2016 - 13:42
Пробовал делать и список - тоже не работало.
Конечно код прописываем в поле JS =)
Так же если не удовлетворен ни один из вариантов, то по идее поля поля 4890 и 4980 не должны отображаться?
#269
Отправлено 01 Март 2016 - 13:42
CbCoder (01 Март 2016 - 10:39) писал:
Обновил информацию: https://clientbase.r...findpost&p=6097
#270
Отправлено 01 Март 2016 - 13:45
#272
Отправлено 01 Март 2016 - 13:52
#273
Отправлено 01 Март 2016 - 13:57
function onchange_{$one_field.id}() { display_field(4890, $('#value{$one_field.id}').val()=="GPS Трекер"); display_field(4980, $('#value{$one_field.id}').val()=="SIM карта"); } $(document).ready(onchange_{$one_field.id}); $('#value{$one_field.id}').change(onchange_{$one_field.id});
Безрезультатно - постоянно отображаются все поля.
#274
Отправлено 01 Март 2016 - 14:02
#275
Отправлено 01 Март 2016 - 14:50
Дело в чем то другом как сказал уважаемый CbCoder
#276
Отправлено 01 Март 2016 - 15:29
ID значения беру со ссылки:
Сообщение отредактировал lexer92: 01 Март 2016 - 15:29
#277
Отправлено 01 Март 2016 - 15:44
Хотя, есть еще одна. Код не будет работать, если поле 4880 нередактируемое. Но вообще то говоря, изначально подразумевается, что JS код предназначен только для редактируемых полей, иначе в нем нет никакого смысла (обычное скрытие можно настроить и через правила). Надеюсь, у вас не этот случай? Иначе мы тут зря теряем время.
#278
Отправлено 01 Март 2016 - 16:48
Поле вроде бы как редактируемое
Не обессудьте, с программированием никогда дела не имел, поэтому столько вопросов..
ipb.global.registerReputation( 'rep_post_30767', { domLikeStripId: 'like_post_30767', app: 'forums', type: 'pid', typeid: '30767' }, parseInt('0') );
#279
Отправлено 01 Март 2016 - 16:57
Цитата
Надо посмотреть, нет ли там ошибок javascript. Если есть, выложите их здесь. В случае наличия ошибок код просто не будет работать (даже если ошибка не в нем)
Цитата
Точно редактируемое? Т.е. когда заходите в просмотр записи -> редактировать, оно отображается и вы можете его менять? Но при изменении поля, JS не срабатывает?
Количество пользователей, читающих эту тему: 21
0 пользователей, 21 гостей, 0 анонимных