Новости Joomla

Вышли релизы безопасности Joomla 5.3.4 и Joomla 4.4.14

Релиз безопасности Joomla 5.3.4

Проект Joomla спешит сообщить о выпуске Joomla 5.3.4 и Joomla 4.4.14. Это релиз безопасности для серии Joomla 5.3 и релиз безопасности для серии Joomla 4.4.

0 Пользователей и 1 Гость просматривают эту тему.
  • 7 Ответов
  • 3552 Просмотров
*

greenmar

  • Захожу иногда
  • 95
  • 4 / 0
Добрый день. Необходимо реализовать следующее.
У меня форма подачи объявления по продаже объекта недвижимости, там есть выпадающий список "Этажность" в котором пользователь выбирает количество этажей здания. Нужно чтобы при его выборе, например, "5" появлялось поле "Этаж" в котором появлялся числовой выпадающий список "Этаж" из 5 цифр, а также "Цоколь" и "Чердак". Если он выбирает "6" то поле "Этаж" уже должно иметь 6 этажей и цоколь и чердак. Думаю,понятно для чего это делается - чтобы пользователь не смог выбрать 7-й этаж в 3-х этажном доме.
*

greenmar

  • Захожу иногда
  • 95
  • 4 / 0
Ау... спецы по яве, где вы??
*

greenmar

  • Захожу иногда
  • 95
  • 4 / 0
Я вот подумал, а можно ли сделать это при помощи поля типа Select Dynamic?
*

Posokhoff

  • Осваиваюсь на форуме
  • 39
  • 5 / 0
  • www.seblod.pro
С динамиком врядли.. надо же каким-то образом передать соответствующий запрос в поле с этажом. Можно наверное прописать в листе этажности значения в формате этаж 6=запрос в бд с ограничением выборки... Но тут по-любому без js не обойтись. Можно проще с теми же скриптами сделать. Сам делал сайты по недвижке и поддерживаю их. С этим вопросом не заморачивался, обычные листы использую... Пока еще никто некорректно не заполнил, хотя согласен - так более эстетично)
*

Lex

  • Завсегдатай
  • 1615
  • 274 / 1
Ну так с чем проблема. На onChange селекта Этажность вешается JS который генерит второй селект с нужными этажами.
Жизнь заставила учиться.
В личке на вопросы не отвечаю.
*

greenmar

  • Захожу иногда
  • 95
  • 4 / 0
Ну так с чем проблема. На onChange селекта Этажность вешается JS который генерит второй селект с нужными этажами.
Можно пожалуйста поподробнее, нет знаний в JS
*

greenmar

  • Захожу иногда
  • 95
  • 4 / 0
Если кому пригодится, решение подсказал athree (seblod-cck.ru):

Создаем два поля, оба - тип Select-Number, одно пусть называется ds_select_a (основной список), второе - ds_select_b (зависимый список), следующие настройки одинаковы:

Start: 1
Step: 1
End: 30

Плюс, для второго поля, зависимого списка, указываем дополнительные настройки:

First (Optional): first
Last (Optional): last

Примечание: несмотря на то, что второй, зависимый список, будет генерироваться автоматически, первоначально в нем необходимо перечислить все возможные значения, поскольку любые другие попросту не "уйдут" при отправки формы, это связано с соображениями безопасности.

"Вешаем" на второе поле следующий триггер (кнопка [5] в редакторе форм SEBLOD):
is Hidden, is Disabled, is Empty WHEN ds_select_a = оставляем пустым

Теперь добавляем простенький JS скрипт с применением jQuery.

Есть много способов добавить JS, например, в специальную форму в главных настройках SEBLOD, или непосредственно в настройки поля (маленькая оранжевая стрелка), но оба способа лично у меня почему-то работают с глюком: при сохранении треугольные скобки куда-то "съедаются"; в принципе, можно было решить непосредственной правкой БД, но я решил не париться, а просто добавил скрипт в основной шаблон (у меня - beez_20) перед закрывающим тегом </head> (также пришлось изменить кодировку на utf-8, чтобы нормально отображался русский текст):

Код
<script type="text/javascript">
  $j(document).ready(function(){
    // Скрипт ...
  });
</script>

Сам скрипт с пояснениями:

Код
// Обработчик событий, задействующийся при изменении значения первого списка
$j('#ds_select_a').change(function(){

  // Первоначально очищаем зависимый сприсок
  $j("#ds_select_b").empty();

  // Добавляем пустое значение
  $j("#ds_select_b").append('<option value="">Выбрать</option>');

  // Добавляем первое значение
  $j("#ds_select_b").append('<option value="first">Первое значение</option>');

  // Переменная, которой присваиваем значение, полученное из первого списка
  var items = $j("#ds_select_a").val();

  // Цикл, который выполниться items число раз, каждый раз добавляя увеличивающиеся на единицу значение
  for (i=1; i<=items; i++) {
    $j("#ds_select_b").append('<option value=' + i + '>' + i + '</option>');
  }

  // Добавляем последнее значение
  $j("#ds_select_b").append('<option value="last">Последнее значение</option>');

});

Огромная благодарность athree за это решение, сам проверил - работает на ура.
*

sergoguga

  • Давно я тут
  • 896
  • 70 / 8
  • www.mpbox.ru
это да! ну а если еще вложенность надо будет добавить? третий и т.д ?
скриптик на ончанг первого поля делать и дальше все поля сами заполняются
>>> Верстка 100 евро - ждешь новый курс? Пиши!
>>> Создание моб. приложений по ГОСТу)))! Личка работает!
>>> Микроразметка по стандартам - цены адекват! Пиши, не боись!
>>> Личный кабинет на ZOO - уже сделан! Пиши в личку, не стесняйся!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Seblod жив?

Автор ost007

Ответов: 11
Просмотров: 4272
Последний ответ 25.10.2020, 12:17:13
от stas_rsv
Вопрос о понимании хранения данных в формах, используя Seblod

Автор weare

Ответов: 1
Просмотров: 3234
Последний ответ 14.07.2019, 13:56:04
от markus-s
Модуль для Seblod, определяющий текущий домен

Автор weare

Ответов: 6
Просмотров: 3530
Последний ответ 21.06.2019, 09:23:00
от Mega-e
JOOMLA+SEBLOD+GOOGLE.MAP

Автор jukov_b1

Ответов: 0
Просмотров: 3338
Последний ответ 13.12.2018, 01:14:55
от jukov_b1
Динамическое меню категорий и поиск Seblod

Автор BlackHawk74

Ответов: 4
Просмотров: 3929
Последний ответ 15.06.2018, 09:18:00
от BlackHawk74