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

varX

  • Практически профи
  • 1628
  • 109 / 4
  • разработка компонентов
На последнем обновление слетели стили кнопки сабмит, вернее добавились из бутстрапа к прописанным мной в addstyle.css кастомным, хотя раньше корректно обрабатывал, стала как будто две кнопки и value "отправить" продублировалось. Откатился пока назад. Как пофиксить?

QuickForm выводит разметку, он не сделан с готовыми стилями, так, чтобы можно было поставить и не работать с ними. Пока, во всяком случае, не до стилей. Это функциональное решение динамической формы. А стили может написать любой. Что касается вашего случая, откуда мне знать, что у вас там за стили написаны.

Цитировать
calcCondition - по указанному id в related fields вызывается заранее заготовленный набор полей (пункт-блок) с селектами, намберами и пр. UI и математикой и calcCondition сравнивает сумму - s (в зависимости что в них выбрано) с заданным условием, и далее в зависимости от результата, в начале и конце этого блока-пункта можно вставить немного математики. Не формы (калькулятора) целиком, а именно этого блока-пункта-группы полей. Так ведь?

calcCondition включает группу полей, заключенную в нем, как include. А математику (собственных операндов), как if(). Если условие выполняется, то есть расчет математики в этой группе (внутри) это s, дает значение (без ошибки) и соответствует условию, тогда перед calcCondition (на входе) и после (на выходе) добавляются математические выражения. И весь этот блок с этими выражениями встраивается в результирующую математическую строку. Если условие не выполняется, тогда в математическую строку встраивается математика блока (включаемой группы полей) без этих дополнительных операндов.

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

Цитировать
Все ломаю голову как сделать v*(a+b+c+n)+a1+b1+c1+n1..., где a и a1, b и b1, c и c1 выбираются одним пунктом из селекта? calcCondition не особо поможет?

Я не понимаю, где тут может возникнуть что-то сложное. Не вижу, где можно думать.

*

cntrl

  • Осваиваюсь на форуме
  • 63
  • 3 / 0
calcCondition включает группу полей, заключенную в нем, как include. А математику (собственных операндов), как if(). Если условие выполняется, то есть расчет математики в этой группе (внутри) это s, дает значение (без ошибки) и соответствует условию, тогда перед calcCondition (на входе) и после (на выходе) добавляются математические выражения. И весь этот блок с этими выражениями встраивается в результирующую математическую строку. Если условие не выполняется, тогда в математическую строку встраивается математика блока (включаемой группы полей) без этих дополнительных операндов.

Не знаю, как это еще проще объяснить, - когда простые вещи начинаешь объяснять подробно, они только усложняются. Самое точное объяснение есть в самом компоненте.
- с этим как раз всё понятно.
Я не понимаю, где тут может возникнуть что-то сложное. Не вижу, где можно думать. У меня есть несколько селектов, каждый их пункт это два числа "a" и "b" числа "а" суммируются (a+a1+a2+a3)*v и умножаются на число полученное от пользователя -v, а уже после к производному прибавляется b+b1+b2 в зависимости от выбранных пунктов в селектах. вот как это сделать? может туплю, но не понимаю. я так могу сделать только последнее перед суммой поле  v*(a+a1+a2+a3)+b3 а еще надо прибавить b, b1 и b2.
« Последнее редактирование: 07.08.2017, 01:28:22 от cntrl »
*

varX

  • Практически профи
  • 1628
  • 109 / 4
  • разработка компонентов
- с этим как раз всё понятно.
Я не понимаю, где тут может возникнуть что-то сложное. Не вижу, где можно думать. У меня есть несколько селектов, каждый их пункт это два числа "a" и "b" числа "а" суммируются (a+a1+a2+a3)*v и умножаются на число полученное от пользователя -v, а уже после к производному прибавляется b+b1+b2 в зависимости от выбранных пунктов в селектах. вот как это сделать? может туплю, но не понимаю. я так могу сделать только последнее перед суммой поле  v*(a+a1+a2+a3)+b3 а еще надо прибавить b, b1 и b2.

В этом случае нужно разветвлять форму на каждом пункте селектов. Каждый выбор будет вести только в своем направлении. В итоге у вас получится много замыкающих групп полей, вида, +a3)+b+b1+b2+b3. Если четыре селекта и по два пункта в каждом, получится восемь концовок и шесть промежуточных групп полей. В каждой группе всего одно поле - следующий селект. В замыкающих группах он ссылается на одну и ту же группу, которая является продолжением формы, если оно есть. Либо ссылаться не с селекта, а добавить calcCondition.
« Последнее редактирование: 07.08.2017, 02:15:18 от varX »
*

cntrl

  • Осваиваюсь на форуме
  • 63
  • 3 / 0
Тоже думал об этом, но у меня там по 6-10 пунктов в каждом селекте, голову сломать если еще ветвить. Придется искать компромиссное решение. Было бы неплохо сделать в компоненте модуль виртуальных переменных (зависмыми hidden полями которые можно вставить в обозначенное место), здорово помогло бы с математикой. Основной затык, что зависимые поля выводятся сразу после поля их вызывающего, вот можно былобы их выводить в определенном месте формулы?
*

27NataRUS

  • Осваиваюсь на форуме
  • 97
  • 0 / 0
Снова здравствуйте.
Несколько вопросов задам.

1. Как реализовать подсчёт, чтобы в последнем блоке дополнительные опции умножались на количество? К количеству уже привязаны цены за единицу.

2. Как сделать перевод некоторых строк для мультиязычного сайта? Добавляю customPHP, в него вставляю <?php echo JTEXT::_('QF_SUM'); ?>, в языковом файле добавляю QF_SUM="Рассчитанная стоимость составляет". И ничего.

3 Как отметить один из радиобоксов в списке checked-ом? (В этой форме радиобоксов нет, просто задумалась сегодня.)
*

varX

  • Практически профи
  • 1628
  • 109 / 4
  • разработка компонентов
Снова здравствуйте.
Несколько вопросов задам.

1. Как реализовать подсчёт, чтобы в последнем блоке дополнительные опции умножались на количество? К количеству уже привязаны цены за единицу.

2. Как сделать перевод некоторых строк для мультиязычного сайта? Добавляю customPHP, в него вставляю <?php echo JTEXT::_('QF_SUM'); ?>, в языковом файле добавляю QF_SUM="Рассчитанная стоимость составляет". И ничего.

3 Как отметить один из радиобоксов в списке checked-ом? (В этой форме радиобоксов нет, просто задумалась сегодня.)

1. Размещать дополнительные опции под каждым полем с количеством.
2. Выводится QF_SUM? Значит этот языковый файл не подгружается.
3. Первый радиобокс всегда checked.
*

cntrl

  • Осваиваюсь на форуме
  • 63
  • 3 / 0
Где поковырять чтобы округлить до целых? нашел round в quickform.js там округляет до десятых, но как сделать не могу понять.
*

varX

  • Практически профи
  • 1628
  • 109 / 4
  • разработка компонентов
Где поковырять чтобы округлить до целых? нашел round в quickform.js там округляет до десятых, но как сделать не могу понять.

Такой возможности нет в компоненте. Если вы поменяете округление в js, тогда итоговая сумма не будет совпадать с суммой, которая получается при пересчете формы на сервере. Вы просто получите сообщение об ошибке и форма не будет отправлена. Это настройка безопасности и вы не сможете ее обойти.
*

27NataRUS

  • Осваиваюсь на форуме
  • 97
  • 0 / 0
1. Размещать дополнительные опции под каждым полем с количеством.
2. Выводится QF_SUM? Значит этот языковый файл не подгружается.
3. Первый радиобокс всегда checked.

1. Не могли бы подсказать, какие дополнительные опции нужно добавить? Я не понимаю.
2. Здесь разобралась. просто QF_SUM, без <?php echo...?> работает.
3. А когда нужен не первый? Нельзя сделать в настройках радиобоксов так же, как на чекбоксах - по произвольному выбору?
*

varX

  • Практически профи
  • 1628
  • 109 / 4
  • разработка компонентов
1. Не могли бы подсказать, какие дополнительные опции нужно добавить? Я не понимаю.
2. Здесь разобралась. просто QF_SUM, без <?php echo...?> работает.
3. А когда нужен не первый? Нельзя сделать в настройках радиобоксов так же, как на чекбоксах - по произвольному выбору?

1. Но это же ваши дополнительные опции?
2. А куда вы это вставляете?
3. Все можно сделать, но нужно делать.
*

cntrl

  • Осваиваюсь на форуме
  • 63
  • 3 / 0
Такой возможности нет в компоненте.
Костылем то всегда можно сделать, поставить выводимую компонентом сумму в display:none, достать её js округлить и показать пользователю, по идеи ничего не нарушая или так работать не будет? Думал есть более элегантный способ.
*

varX

  • Практически профи
  • 1628
  • 109 / 4
  • разработка компонентов
Костылем то всегда можно сделать, поставить выводимую компонентом сумму в display:none, достать её js округлить и показать пользователю, по идеи ничего не нарушая или так работать не будет? Думал есть более элегантный способ.

Пока нет элегантного способа.
*

guliwer

  • Осваиваюсь на форуме
  • 93
  • 1 / 1
Подскажите почему файл не загружается через форму, и кракозябры в пост запросе http://prntscr.com/g7lm0r
на сайте http://ru-portret.ru/ ссылка сделать заказ
познаю не опознанное!
*

varX

  • Практически профи
  • 1628
  • 109 / 4
  • разработка компонентов
Подскажите почему файл не загружается через форму, и кракозябры в пост запросе http://prntscr.com/g7lm0r
на сайте http://ru-portret.ru/ ссылка сделать заказ

Откуда мне знать. Нужно смотреть ваш сайт, разбираться. Пишите в поддержку, заказывайте работу.
*

timon

  • Новичок
  • 2
  • 0 / 0
Добрый день!

Ввожу данные в ваше компоненте в поле hidden или calculatorSum получаю такую ошибку


 Warning: Invalid argument supplied for foreach() in /home/u20908/u20908.netangels.ru/www/1/administrator/components/com_quickform/views/form/tmpl/edit.php on line 50

*

varX

  • Практически профи
  • 1628
  • 109 / 4
  • разработка компонентов
Добрый день!

Ввожу данные в ваше компоненте в поле hidden или calculatorSum получаю такую ошибку


 Warning: Invalid argument supplied for foreach() in /home/u20908/u20908.netangels.ru/www/1/administrator/components/com_quickform/views/form/tmpl/edit.php on line 50


Такая ошибка наблюдалась после того, как QF2 ставили поверх QF1, без предварительной деинсталляции. Во всех других случаях нужно смотреть ваш сайт, баги стали очень индивидуальными.
*

timon

  • Новичок
  • 2
  • 0 / 0
Проблема возникает когда название этой строки вводишь по русски, если пишешь на английском то все работает. Что можно cделать?
« Последнее редактирование: 28.08.2017, 17:49:47 от timon »
*

varX

  • Практически профи
  • 1628
  • 109 / 4
  • разработка компонентов
Проблема возникает когда название этой строки вводишь по русски, если пишешь на английском то все работает. Что можно cделать?
В первую очередь проверить кодировку таблиц в базе данных.
*

Pintea

  • Новичок
  • 5
  • 0 / 0
Проблему решил!
Спойлер
[свернуть]
Зашел в БД сайта удалил 2 строки расширения. Скопировал 3 строки с БД рабочего сайта(он там работает полностью), переименовал префикс в своей и все заработало.
Скорее всего глюк из за того, что раньше сайт был в версии 2.5. Других объяснений у меня нет)))
Спасибо! Очень помогло
*

kot488

  • Осваиваюсь на форуме
  • 42
  • 0 / 0
Подскажите пожалуйста, прочитал вроде всю ветку не нашел. Наверно пропустил. Можно как то выставить, что бы при переходе на форму не отображались сразу все поля, а постепенно выслывали. Выбрал первое поле, потом всплыло зависимое второе и т.д. И еще вопрос, даты возможно формулой считать? К примеру на форме получить сегодняшнюю дату и к ней добавить 3 дня?
*

Inna

  • Осваиваюсь на форуме
  • 75
  • 1 / 0
Цитировать
Подскажите пожалуйста, прочитал вроде всю ветку не нашел. Наверно пропустил. Можно как то выставить, что бы при переходе на форму не отображались сразу все поля, а постепенно выслывали. Выбрал первое поле, потом всплыло зависимое второе и т.д. И еще вопрос, даты возможно формулой считать? К примеру на форме получить сегодняшнюю дату и к ней добавить 3 дня?
Чекбоксами. Человек ставит галочку в чекбоксе и после этого всплывает зависимое поле или группа полей.
« Последнее редактирование: 29.08.2017, 22:39:32 от Inna »
*

varX

  • Практически профи
  • 1628
  • 109 / 4
  • разработка компонентов
Подскажите пожалуйста, прочитал вроде всю ветку не нашел. Наверно пропустил. Можно как то выставить, что бы при переходе на форму не отображались сразу все поля, а постепенно выслывали. Выбрал первое поле, потом всплыло зависимое второе и т.д. И еще вопрос, даты возможно формулой считать? К примеру на форме получить сегодняшнюю дату и к ней добавить 3 дня?

Это делается при помощи зависимых полей. Например, с помощью select. Делаете селект с опциями. Первая опция содержит значение "выбрать пункт". К следующим опциям привязываются зависимые поля, такие, как вам нужно. И так, хоть до бесконечности.

По поводу дат, что конкретно нужно? У вас форма с калькулятором и вам нужно значение даты в калькуляторе использовать? Или разницу в днях? В любом случае, нужно дописывать скрипт под эту задачу, т.к. компонент не рассчитывает даты по умолчанию.
*

kot488

  • Осваиваюсь на форуме
  • 42
  • 0 / 0
 По первому пункту)  Создал в списке первый вариант пустой.  И пока что то не выбрать то дальше список не открывается.

По второму. Пробую использовать данную форму для создания заявок перемещения между складами. Можно ли сделать такое.  Человек загоняет форме 01.09.2017 на форме, есть поле дата доставки. Что бы в поле дата доставки автоматически представлялась дата 03.09.2017, плюс два дня.
И еще вопрос.  Есть поля с условиями?  К примеру если в поле 2 выбрано карандаш в поле 3 выбрано ручка то в 4 поле поставляется Коробка, а если в поле 3 ватман то в поле 4 тубус
*

varX

  • Практически профи
  • 1628
  • 109 / 4
  • разработка компонентов
1. Чтобы обрабатывать календарные даты, нужно дописывать скрипт. Если не сможете сами дописать, тогда и подставляться ничего не будет.
2. Можно любые зависимости строить, смотрите примеры на сайте компонента.
*

kot488

  • Осваиваюсь на форуме
  • 42
  • 0 / 0
1. Чтобы обрабатывать календарные даты, нужно дописывать скрипт. Если не сможете сами дописать, тогда и подставляться ничего не будет.

Получилось через php.
Интересует еще один вопрос. С помощью поля я получаю IP пользователя. Можно сделать что бы, если IP = 192.168.1.2 то в віпадающие списки подставлялись одни данные, а если 192.168.1.2 то другие?
« Последнее редактирование: 30.08.2017, 15:37:37 от kot488 »
*

varX

  • Практически профи
  • 1628
  • 109 / 4
  • разработка компонентов
Получилось через php.
Интересует еще один вопрос. С помощью поля я получаю IP пользователя. Можно сделать что бы, если IP = 192.168.1.2 то в віпадающие списки подставлялись одни данные, а если 192.168.1.2 то другие?
Для подобных задач нужно делать новый тип поля в компонент, который будет решать их так, как вам нужно.
*

kot488

  • Осваиваюсь на форуме
  • 42
  • 0 / 0
Для подобных задач нужно делать новый тип поля в компонент, который будет решать их так, как вам нужно.

Уведомления только на тот e-mail который в проэкте можно отправлять, если указать поле с почтой нельзя сделать уведомления про изменение статуса пользователю, правильно?
*

seregapr

  • Осваиваюсь на форуме
  • 38
  • 1 / 0
Добрый день, скажите пожалуйста как можно реализовать форму по примеру той которая показана в качестве примера тут - http://juice-lab.ru/en/dev/components/29-quickform-2-form-builder-with-dynamic-fields-and-calculator там Расчет окна интересует.
На самомо деле вопрос в первую очередь как реализовано вот это - http://prntscr.com/gft0vk то есть щелкнули на превьюшку и открылась фотка большая. Ну и я  так понимаю какая картинка выбрана это отправляется админу.
Если это через произвольный HTML Или PHP код, то может есть у кого то этот код уже. Спасибо заранее.
« Последнее редактирование: 01.09.2017, 15:59:15 от seregapr »
*

varX

  • Практически профи
  • 1628
  • 109 / 4
  • разработка компонентов
Добрый день, скажите пожалуйста как можно реализовать форму по примеру той которая показана в качестве примера тут - http://juice-lab.ru/en/dev/components/29-quickform-2-form-builder-with-dynamic-fields-and-calculator там Расчет окна интересует.
На самомо деле вопрос в первую очередь как реализовано вот это - http://prntscr.com/gft0vk то есть щелкнули на превьюшку и открылась фотка большая. Ну и я  так понимаю какая картинка выбрана это отправляется админу.
Если это через произвольный HTML Или PHP код, то может есть у кого то этот код уже. Спасибо заранее.
Ну там же есть пример, как еще объяснить? Это при помощи CSS делается.
*

kot488

  • Осваиваюсь на форуме
  • 42
  • 0 / 0
Есть возможность как то скопировать весь проэкт, создать дубль одного готового?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

QuickForm - форма с функциями калькулятора и зависимыми полями

Автор varX

Ответов: 1294
Просмотров: 137388
Последний ответ 19.09.2017, 16:28:40
от varX
Форма Конструктор комплектаций

Автор Dusk09

Ответов: 0
Просмотров: 234
Последний ответ 07.05.2017, 01:25:26
от Dusk09
Форма с зависимыми выпадающими списками

Автор nick200

Ответов: 6
Просмотров: 1409
Последний ответ 10.04.2017, 21:13:02
от chemerzaev
Конструктор форм JSN UniForm не применяется цвет фона

Автор DeniTornado

Ответов: 0
Просмотров: 551
Последний ответ 08.12.2016, 12:39:12
от DeniTornado
Создание форм с помощью JSN UniForm Pro

Автор yunoshev

Ответов: 6
Просмотров: 1931
Последний ответ 12.10.2016, 20:35:35
от fedos666