Magento One Page Checkout Внешний запрос AJAX - PullRequest
0 голосов
/ 15 марта 2012

Мне нужно иметь возможность получать информацию о доставке из внешнего источника на основе адреса электронной почты и вставлять данные в форму информации о доставке.

Запрос ajax отлично работает на пустой странице, однако, когдаЯ добавляю код в шаблон оформления одной страницы при нажатии кнопки, поиск ajax не запускается, скорее браузер работает так, как будто я нажал на кнопку «продолжить».

Я не могуразобраться в сочетании внешнего и встроенного JS в magento, чтобы я не мог понять, что является причиной этой проблемы.

Мой внешний php-файл возвращает объект json, который представляет собой массив, имеющий следующие значения: [0] - Улица 1 - Город [2] - Регион [3] - Почтовый индекс [4] - Страна

Обратите внимание, что я использую найденный плагин jQuery Ajax Form здесь :

В шаблоне / оформить заказ / одну страницу / доставку я добавил следующий код примерно в строку 38:

<form id="treat-email" action="treatme.php" method="post"> 
    Email: <input type="text" name="treat-email" /> 
    <input type="submit" value="Get Address" /> 
</form>
<script> 
    jQuery(document).ready(function() { 
        jQuery('#treat-email').ajaxForm({
            dataType: 'json',
            success: processJson,
            error: function(){
                alert("You Failed!");
            },
        }); 
    });
    function processJson(data){
        jQuery('#shipping:street1').val(data[0]);
        jQuery('#shipping:city').val(data[1]);
        jQuery('#shipping:region').val(data[2]);
        jQuery('#shipping:postcode').val(data[3]);
        jQuery('#shipping:country').val(data[4]);
    }
</script> 

1 Ответ

0 голосов
/ 16 марта 2012

Сам разобрался

Я встроил код в форму фактического адреса, поэтому нажатие кнопки «Получить адрес» заставляет его отправить основную форму адреса.

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