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

Plosky

  • Захожу иногда
  • 106
  • 2 / 0
Он срабатывает только если выключить и снова включить галку (по умолчанию включена). Поэтому если просто заполнить все поля и подтвердив заказ, система ругается и выдает ошибку, мол не все поля заполнены.
*

Plosky

  • Захожу иногда
  • 106
  • 2 / 0
Никто не знает? Может так понятнее:



сайт: 7vitamin.ru
« Последнее редактирование: 21.08.2014, 10:11:05 от Plosky »
*

Тренд

  • Захожу иногда
  • 59
  • 6 / 0
Так сложно сказать, надо код смотреть.
Предполагаю:
При формировании формы на чекбокс ставится параметр checked, а скрип принимающий форму ждет получения в формате checked=true.
Возможно еще и JS обрабатывает форму перед отправкой, возможно он и какие-то скрытые поля попутно обновляет, которые срабатывают, только если отменить чекбокс и потом заново его включить.
Можно много сделать догадок.
Я бы в получаемом скрипте сделал вывод в браузер принимаемых параметров и сравнил, в чем их отличие в обоих случаях. Отличия точно должны быть и задача потом их устранить.
*

Plosky

  • Захожу иногда
  • 106
  • 2 / 0
Тренд, вообще происходит следующий алгоритм: поля для адреса доставки копируются из основных полей (что на скрине выше) в момент ручного включения чекбокса! А по логике должны копироваться в момент подтверждения заказа. Как можно это исправить?
Для меня и не важны эти данные для доставки, они ведь все равно дублируются из контактной информации, просто система не дает пользователю оформить заказ.

Кстати, используется плагин "One Page Checkout". Все что он делает, это автоматически ставит галку "Использовать для адреса 'Куда' данные адреса плательщика" для того чтобы покупатель не заполнял одни и те же поля дважды.
« Последнее редактирование: 21.08.2014, 10:36:06 от Plosky »
*

Plosky

  • Захожу иногда
  • 106
  • 2 / 0
РЕШЕНО! Проблема была в редактировании файла корзины, я в нем таблицу с выбранными товарами поставил вверх страницы, а поля для адресов ниже. Визуально все отлично сработало, не понятно только почему потянуло за собой такой баг. Видимо для алгоритма выполнения кода важна именно такая очередность.
*

Plosky

  • Захожу иногда
  • 106
  • 2 / 0
Все же проблема актуальна. При заполнении всех полей и подтвердив заказ, система ругается, что не заполнено поле телефон! Хотя оно заполнено. И в настройках "Поля, заполняемые пользователями" убрал чекбокс "Показать при выборе доставки" для телефона - не помогло. В чем может быть дело?

Плюс еще проблема в том, что эти скрытые поля использующиеся для адреса доставки мешают работе, например, я решил оформить еще один заказ, но указав при этом другую контактную информацию и после нажатия подтвердить, новый заказ формируется со старыми данными из предыдущего заказа! Видимо они берутся из этих скрытых полей. Помогите решить проблему.
« Последнее редактирование: 22.08.2014, 11:38:56 от Plosky »
*

Plosky

  • Захожу иногда
  • 106
  • 2 / 0
Решено! :D *DRINK*

Решение:
открываем файл /ваш шаблон/html/com_virtuemart/cart/defaut.php

ищем в начале файла код:
JHtml::_('behavior.formvalidation');
$document = &JFactory::getDocument();
$document->addScriptDeclaration("
   jQuery(document).ready(function($) {
      $('div#full-tos').hide();
      $('span.terms-of-service').click( function(){
         //$.facebox({ span: '#full-tos' });

вставляем после него следующий код:
   $('.billto-shipto input[type=\"text\"]').change(function(){ update_form(); });

Сохраняем, закрываем. Теперь скрытые поля для доставки будут брать информацию из основных полей при каждом изменении формы. Соответственно эта заплатка решает следующие проблемы:
  • Цитировать
    после заполнения всех полей и нажатия на кнопку «оформить заказ», перекидывает на страницу «Ваши данные» где опять нужно заполнить поля и только тогда оформлять заказ.
  • Цитировать
    эти скрытые поля использующиеся для адреса доставки мешают работе, например, я решил оформить еще один заказ, но указав при этом другую контактную информацию и после нажатия подтвердить, новый заказ формируется со старыми данными из предыдущего заказа! Видимо они берутся из этих скрытых полей.

Но даже после этой заплатки, система все равно ругалась, что не заполнено поле телефон, хотя оно заполнено. Решил проблему так:
Не понял алгоритма, но суть в том, что VirtueMart почему-то ругается на некоторые поля, поле для Телефона в том числе. Экспериментальным путем выявил поле, на которое система не ругалась (одно из полей для адреса) переименовал его в "телефон" и все. ;)
*

kampotix

  • Новичок
  • 3
  • 0 / 0
Это поле Address Nickname
Спасибо огромное
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как добавить радиокнопку или чекбокс в корзину и в уведомление?

Автор eu4ria

Ответов: 4
Просмотров: 1633
Последний ответ 09.02.2021, 18:18:10
от eu4ria
Отправляем данные о заказе в Google Analytics

Автор gartes

Ответов: 0
Просмотров: 1456
Последний ответ 31.01.2020, 21:32:16
от gartes
Не работает регистрация пользователей VM3

Автор doublehead

Ответов: 3
Просмотров: 1536
Последний ответ 18.06.2018, 19:17:52
от pr_promo
Не работает окно добавлено в корзину

Автор dimasan57

Ответов: 7
Просмотров: 1272
Последний ответ 24.01.2018, 22:00:39
от ProtectYourSite
Не работает оформление заказа товара

Автор asterixxl

Ответов: 3
Просмотров: 1260
Последний ответ 31.01.2017, 17:39:53
от TipoGraff