Перейти к содержимому


Показ/скрытие полей через JavaScript


Сообщений в теме: 333

#21 arsenal

    Активный участник

  • Пользователи
  • PipPipPip
  • 448 сообщений

Отправлено 08 Август 2011 - 11:37

Просмотр сообщенияРазработчик (4.8.2011, 14:46) писал:

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

#22 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 761 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 08 Август 2011 - 12:11

Просмотр сообщенияarsenal (8.8.2011, 12:37) писал:

Если полю типа "список" поставить галочку "множественный выбор", то функция на изменение поля тоже не срабатывает. Так и должно быть?
Да, только там причина несколько иная. Там событие не возникает вообще. Попробуем тоже исправить.

#23 DarkNight

    Активный участник

  • Пользователи
  • PipPipPip
  • 181 сообщений

Отправлено 15 Август 2011 - 10:41

не работает скрытие полей в подчиненной таблице при просмотре редактировании.
display_field({$one_field.id}_{$one_field.line_id}, document.getElementById('value590_{$one_field.line_id}').value==3);

Вернее все правильно формируется, но перекрывается display стилем user agent stylesheet

Версия: 1.9.3 Ревизия: 2007 от 2011-07-14

Сообщение отредактировал DarkNight: 15 Август 2011 - 11:52


#24 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 761 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 15 Август 2011 - 12:01

ID поля то в кавычки занесите, иначе у вас естественно возникает синтаксическая ошибка, см. в отладчик JavaScript.

display_field('{$one_field.id}_{$one_field.line_id}', document.getElementById('value590_{$one_field.line_id}').value==3);

#25 DarkNight

    Активный участник

  • Пользователи
  • PipPipPip
  • 181 сообщений

Отправлено 15 Август 2011 - 13:12

действительно, спасибо.

А когда примерно можно ожидать что это на поле "связь" будет работать?

Сообщение отредактировал DarkNight: 15 Август 2011 - 13:12


#26 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 761 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 15 Август 2011 - 13:35

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

#27 arsenal

    Активный участник

  • Пользователи
  • PipPipPip
  • 448 сообщений

Отправлено 25 Август 2011 - 15:20

Можно ли через вычисления управлять видимостью полей (колонок) в таблице?

Сообщение отредактировал arsenal: 25 Август 2011 - 15:20


#28 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 761 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 25 Август 2011 - 15:26

Нет, на данный момент нельзя. Рекомендую "спорные" поля убирать вообще из режима таблицы.

#29 arsenal

    Активный участник

  • Пользователи
  • PipPipPip
  • 448 сообщений

Отправлено 25 Август 2011 - 15:27

Просмотр сообщенияРазработчик (25.8.2011, 15:26) писал:

Нет, на данный момент нельзя. Рекомендую "спорные" поля убирать вообще из режима таблицы.
Планируется?

#30 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 761 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 25 Август 2011 - 15:55

Нет, не планируется, т.к. не видим пока в этом особого смысла. Любая доработка занимает время программистов, поэтому приходится сосредотачиваться на более актуальных вещах.

#31 f-jeka

    Активный участник

  • Пользователи
  • PipPipPip
  • 196 сообщений

Отправлено 11 Сентябрь 2011 - 00:20

У меня почему-то в таблице контрагенты отображаются не все поля. Никак не могу сделать чтоб отображался Сайт компании. Галочка скрыть убрана. Также не отображается поле Тип и несколько других. Как их все отобразить?

#32 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 761 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 12 Сентябрь 2011 - 09:09

Где именно то "галочка скрыть" убрана? Вы в права доступа группы заходили?

#33 arsenal

    Активный участник

  • Пользователи
  • PipPipPip
  • 448 сообщений

Отправлено 10 Октябрь 2011 - 15:23

Просмотр сообщенияarsenal (8.8.2011, 11:37) писал:

Если полю типа "список" поставить галочку "множественный выбор", то функция на изменение поля тоже не срабатывает. Так и должно быть?

Просмотр сообщенияРазработчик (8.8.2011, 12:11) писал:

Да, только там причина несколько иная. Там событие не возникает вообще. Попробуем тоже исправить.

Исправили?

#34 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 761 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 10 Октябрь 2011 - 16:43

Нет, не исправляли еще. Руки не дошли пока.

#35 shambler81

    Активный участник

  • Активный пользователь
  • PipPipPip
  • 98 сообщений
  • Пол:Мужчина
  • Город:Москва

Отправлено 28 Ноябрь 2011 - 20:25

Просмотр сообщенияРазработчик (10.10.2011, 16:43) писал:

Нет, не исправляли еще. Руки не дошли пока.
почти 2012 год руки так и не дошли :)

#36 smart

    Активный участник

  • Пользователи
  • PipPipPip
  • 297 сообщений
  • Пол:Мужчина
  • Интересы:v1980.8@gmail.com

Отправлено 14 Декабрь 2011 - 20:20

коллеги, в версии 1.9.3. прекрасно работал код который скрывал определенные поля. (выкладываю его)


function onchange_{$one_field.id}()
{
display_field(1148, document.getElementById('value{$one_field.id}').value=="Главная страница" || document.getElementById('value{$one_field.id}').value=="Почта");
display_field(1147, document.getElementById('value{$one_field.id}').value=="Главная страница" || document.getElementById('value{$one_field.id}').value=="Почта");
display_field(1149, document.getElementById('value{$one_field.id}').value=="Главная страница" || document.getElementById('value{$one_field.id}').value=="Почта");
display_field(1150, document.getElementById('value{$one_field.id}').value=="Главная страница" || document.getElementById('value{$one_field.id}').value=="Почта" || document.getElementById('value{$one_field.id}').value=="Авто");
}
addHandler(document.getElementById('value{$one_field.id}'), 'onchange', onchange_{$one_field.id});

display_field({$one_field.id}, document.getElementById('value1144').value=="Почта"|| document.getElementById('value1144').value=="Главная страница");

в 1.9.5. не работает.

в чем ошибка?

====

и кстати, кто то на форуме писал что как то можно группы скрывать? а это про что?

#37 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 761 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 15 Декабрь 2011 - 09:09

Просмотр сообщенияsmart (14 Декабрь 2011 - 20:20) писал:

в 1.9.5. не работает
В 1.9.5 механизм JS не меняли. Возможно баг. Пришлите бэкап через заявку.

Просмотр сообщенияsmart (14 Декабрь 2011 - 20:20) писал:

и кстати, кто то на форуме писал что как то можно группы скрывать? а это про что?
Про группы полей очевидно. Функция display_fgroup, работает полностью аналогично display_field. Также группа скрывается автоматом если нет доступа ни к одному полю в группе.

#38 andibrag

    Прежде, чем задать вопрос, продумайте свое решение.

  • Активный пользователь
  • PipPipPip
  • 1 356 сообщений
  • Пол:Мужчина
  • Город:Санкт-Петербург

Отправлено 15 Декабрь 2011 - 12:00

Просмотр сообщенияРазработчик (15 Декабрь 2011 - 09:09) писал:

Функция display_fgroup, работает полностью аналогично display_field.

display_fgroup(15,0);
Не работает. - Cannot read property 'style' of null

Но странно, что
document.getElementById('fgroup_view_header15').style.display='none';
document.getElementById('fgroup_view15').style.display='none';
работает

Творческая группа "ТАВР".

www.TAVR.pro Художественная ковка, металлоконструкции.

www.СтолМет.рф Складные столы, стулья и системы для их хранения


#39 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 761 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 15 Декабрь 2011 - 12:31

Вы разместили JS в поле, которое не отображается в режиме редактирования, соответственно возникает ошибка скрытия элемента до того как он отобразится. Второй ваш код не скрывает группу в режиме редактирования, поэтому работает.

Поместите display_fgroup в подходящее поле.

#40 arsenal

    Активный участник

  • Пользователи
  • PipPipPip
  • 448 сообщений

Отправлено 31 Январь 2012 - 00:22

Версия 195.
Есть простой код JS, который в режиме просмотра скрывает/показывает поле в зависимости от значения другого поля.
 if (document.getElementById('value927').value=="ДА")
	 display_field(928, 1);
else
	 display_field(928, 0);
Однако он работает только если его разместить в поле 927. Так и должно быть?





Количество пользователей, читающих эту тему: 18

0 пользователей, 18 гостей, 0 анонимных