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


Скрыть кнопку "Добавить запись"


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

#1 makeev

    Участник

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

Отправлено 20 Май 2015 - 15:30

Добрый день!

Есть категория с товаром.
В ней две таблицы.
1. "Личные данные" клиентов с подтаблицей заказы, в которую заносятся заказы и которая связана по клиенту.
2. Собственно таблица "Заказы" в которой уже видно, кто, что, где когда.

Дабы избежать путаницы хочу скрыть кнопку "Добавить запись" в таблице "Заказы".
Если скрыть это событие в доступе то соотвественно в "Личных данных" менеджер не сможет добавить в подтаблицу заказ.

Пробую различные варианты, которые нашел на форуме. Пока не получается. Видимо все не так делаю.
Создаю поле в котором применил html форматирование -
<script>
$(document).ready(function() {
$("#add_record").css("display", "none");
});
</script>

Эффекта нет. Возможно не туда запись вношу (вписывал в раздел javacript и в поле форматирования)
Пробовал другие классы, тоже никак.
В принципе возможно ее скрыть?

#2 CbCoder

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

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

Отправлено 20 Май 2015 - 16:54

Цитата

Эффекта нет. Возможно не туда запись вношу (вписывал в раздел javacript и в поле форматирования)

Не понял, вы одновременно что ли запихали код и туда и сюда? И зачем городить поле с html форматированием, если уже есть специальный "раздел javascript"?

#3 makeev

    Участник

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

Отправлено 20 Май 2015 - 21:16

Нет конечно, я пробовал по разному, когда уже все логичные варианты перепробовал - начал глупости делать.
В частности сейчас в разделе javascript вставил
$(document).ready(function() {
  $("#add_record").css("display", "none");
});
Использовал и ".add_record" и "add_record"
Пробовал для разнообразия другие классы подставлять (например div архив | удаленные). Ничего с табличного представления не исчезает.
К слову в самой записи, если ее открыть, все успешно скрывается.
Но там то мне как раз ничего трогать не надо пока.

Пробовал и
document.getElementById(add_record).style.display='none';
Тоже ничего.
Уже и не знаю как правильно написать.

#4 makeev

    Участник

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

Отправлено 20 Май 2015 - 22:45

Добавлю.
В уроках есть статья по формату числового поля - чтобы цифра не разбивалась по три.
Там приведен код.
Для примера я его использовал. Он работает только в режиме просмотра записи.
В табличном представлении цифры по прежнему разбиваются на 3 части.
Видимо и с сокрытием кнопки похожая ситуация.

Меняя в инспекторе режим на "none" все чудесно пропадает, но это так.. для определения желаемого.
<div id="add_record" class="no_print" style="display: inline-block;">
А куда тогда вписывать код, чтобы в табличном режиме он тоже сработал?

#5 CbCoder

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

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

Отправлено 21 Май 2015 - 09:30

Извиняюсь, ступил и не сообразил сразу что речь о табличном режиме, а не просмотре записи. Там действительно JS из настроек поля не работает. Но тогда честно говоря сам не знаю, как ее там скрыть через JS, если вариант с html-полем у вас не работает.

#6 makeev

    Участник

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

Отправлено 21 Май 2015 - 13:26

Грустно. По сути хотел сделать изящную защиту от дурака, поскольку на уровне доступа этот вопрос не получается решить.
Есть еще вариант создать связанную таблицу, в которую одновременно будут заноситься данные из "Заказы" и убрать к ней доступ записи.
А саму таблицу "Заказы" скрыть.
Но тогда во первых - это двойная нагрузка на базу.
Кроме того, нельзя будет откорректировать заказ (дата, кол-во) войдя в запись и в третьих получается такой кривой костыль..

Насколько понимаю есть еще решение - при нажатии кнопки "Добавить запись" и выборе связующего номера клиента,
возможно автоматически заполнение его данных сразу в форме, но что-то мне подсказывает что нужно кучу кода прописывать.
Досадно.

#7 CbCoder

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

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

Отправлено 21 Май 2015 - 18:26

Цитата

По сути хотел сделать изящную защиту от дурака, поскольку на уровне доступа этот вопрос не получается решить.

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

#8 andibrag

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

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

Отправлено 21 Май 2015 - 23:19

Просмотр сообщенияmakeev (20 Май 2015 - 15:30) писал:

Создаю поле в котором применил html форматирование -
<script>
$(document).ready(function() {
$("#add_record").css("display", "none");
});
</script>

Эффекта нет. Возможно не туда запись вношу (вписывал в раздел javacript и в поле форматирования)
Пробовал другие классы, тоже никак.
В принципе возможно ее скрыть?
Ради интереса проверил. Создал поле, вставил Ваш код как значение по-умолчанию. Все скрывается. Проверил в Chrome и IE.

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

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

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


#9 makeev

    Участник

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

Отправлено 22 Май 2015 - 00:10

Какая ирония. Чуть ли не единственное поле в котором я не пробовал в сочетании с форматированием.
Выражаю огромную благодарность Вашему любопытству. Создал поле, включил форматирование, по умолчанию прописал - скрывается.
Глаз правда успевает увидеть как она появляется, пропадает, но это уже детали.
Спасибо!

Вопрос только, глюк это или фича.
Не хотелось бы лишиться такого приятного глюка.

#10 maksbazhin

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

  • Пользователи
  • PipPipPip
  • 62 сообщений
  • Пол:Мужчина

Отправлено 27 Апрель 2018 - 09:54

Здравствуйте.
Есть поля номер, дата, вид документа они заполняются менеджером, на основании этих данных автоматически формируется ссылка на основной договор и еще пара полей.
Как скрыть кнопку "Добавить запись" в зависимости от выбранного фильтра (т. к. в некоторых фильтрах нет нужных полей и они появляются при добавлении записи). И как скрыть вычисляемые поля при добавлении записи и скрыть ненужные поля из основной таблицы при этом что бы они были при добавлении записи.





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

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