Кнопка «Оформить заказ» на одностраничном оформлении Magento не отвечает. (Встроенный JS не выполняется.) - PullRequest
3 голосов
/ 22 сентября 2011

В настоящее время пытается установить правильную работу одной страницы при установке Magento 1.6.0.0.

Каждый шаг работает до тех пор, пока не появится окно с порядком окончательного просмотра, кнопка «Разместить заказ» выдает ошибку review not defined при попыткедля запуска события review.save() OnClick.

Следующий скрипт должен создать этот объект review.Он находится в том же файле, что и кнопка, и вызывается через AJAX, когда пользователь достигает последнего шага процесса заказа.Если я получаю доступ к файлу напрямую, этот код выполняется и объект создается, только когда он вытягивается страницей оформления заказа, он не запускается.

<script type="text/javascript">
  //<![CDATA[
  review = new Review('http://example.org/checkout/onepage/saveOrder/', 'http://example.org/checkout/onepage/success/', $('checkout-agreements'));
  SageServer = new EbizmartsSagePaySuite.Checkout
  ({
     'checkout': checkout,
     'review': review,
     'payment': payment,
     'billing': billing,
     'accordion': accordion
  });
  //]]>
</script>

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

У кого-нибудь есть какие-нибудь идеи?

Ответы [ 4 ]

6 голосов
/ 03 сентября 2014

Мы переходили на более новую версию Magento (1.8), и кнопка «Разместить заказ» также не работала у нас.

Ответ Мукеша указал мне правильное направление.Тем не менее, опубликованный код не работал.

Это сработало для меня:

review = new Review('<?php echo $this->getUrl('checkout/onepage/saveOrder', array('form_key' => Mage::getSingleton('core/session')->getFormKey())) ?>', '<?php echo $this->getUrl('checkout/onepage/success') ?>', $('checkout-agreements'));    
3 голосов
/ 20 декабря 2014

В приложении / дизайн / внешний интерфейс / mypackage / mytheme / template / checkout / onepage / review / info.phtml я заменил и работаю grt.

<?php echo $this->getChildHtml('button') ?>

с

<button type="submit" title="<?php echo $this->__('Place Order') ?>" class="button btn-checkout" onclick="review.save();"><span><span><?php echo $this->__('Place Order') ?></span></span></button>
3 голосов
/ 23 октября 2011

Это обновление?Если это так, попробуйте это: http://sree.cc/magento_ecommerce_tips/checkout-not-working-on-magento-version-1-4-x Попробуйте, даже если это не обновление.Я исправил эту проблему несколько раз с помощью этого решения.

Я бы сделал diff.с программным обеспечением, как WinMerge.Проверьте различия в ваших папках оформления оформления заказа и базовой Magento.

app / design / frontend / base / default / template / checkout против app / design / frontend / default / YOUR_THEME / template / checkout

также проверьте файл XML: app / design / frontend / base / default / layout / checkout.xml против app / design / frontend / default / YOUR_THEME / layout / checkout.xml

Hopeэто помогает.

Франсуа

0 голосов
/ 05 августа 2014

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

Замените базовый файл следующим путем app / design / frontend / default / your_theme / template / checkout / onepage / review/info.phtml (или)

Заменить номер строки 81 в info.phtml

review = new Review ('getUrl (' checkout / onepage / saveOrder ', array (' form_key '=> Mage :: getSingleton ('core / session') -> getFormKey ()))?> ',' GetUrl ('checkout / onepage / success')?> ', $ (' Checkout-соглашения '));

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...