2013-08-03 3 views
1

В настоящее время я пытаюсь отправить данные формы на сторонний сайт с нашего собственного сайта на WordPress.Двойное действие на кнопку отправки формы HTML

Мне нужно его открыть в новом пустом окне или вкладке. Я могу сделать это до сих пор, используя target = "_ blank" в самой форме.

Незначительная часть - я также хочу, чтобы данные сохранялись на моем собственном сайте.

Единственный способ, которым я знаю, как сделать это двойное действие - подключиться после того, как сообщение сохранено на моем сайте, но это означает, что форма отправлена ​​на мой собственный сайт, а затем я использую javascript или что-то, чтобы перенаправить на третий но это создает всплывающие предупреждения, которые у меня не могут быть в этом случае ...

У кого-нибудь есть идеи по этому поводу, и если я не был достаточно подробным, пожалуйста, не стесняйтесь спрашивать меня больше информации.

Благодаря

+0

Честно говоря, я бы поступил иначе. Сначала я отправил POST на ваш собственный сайт (в новом окне), тогда обработчик на стороне сервера выполнил бы отправку данных на сторонний сайт, а затем перенаправил вас на сторонний сайт (с GET, очевидно). –

ответ

1

Возможно представить на AJAX первым на локальный сайт, затем - в случае успеха - отправить форму & навигации их целую страницу в другой домен?

С JQuery:

<form id='form' method='post' action='http://remote.website.com/send-data-here'> 
    <input ...> 
    <input ...> 
    ... 
    <button type='button' onclick='doubleSubmit();'>Submit</button> 
</form> 

<script type='text/javascript'> 
    var LOCAL_URL = "/myForm-receiver.php"; 
    function doubleSubmit() { 
     var data = $('#form').serialize(); 
     $.post(LOCAL_URL, data, new function(response){ 
      // Successfully posted by AJAX to Local Website; 
      // -- now POST the form to the destination site, 
      // -- & navigate to that result page. 
      $('#form).submit(); 
     }); 
    } 
</script> 

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

+0

Ваше предположение верно. Храните локально в качестве ведущего ... мы хотим знать, что транзакция произошла, и информация затем отправляется на веб-сайт партнера. Это решение похоже именно на то, что мне нужно. Спасибо вам большое за ваше время. Я думаю, это будет прекрасно. –

0

нужно отправить данные через AJAX и сохраненные данные в вашей базе данных, то перенаправление URL третьей стороны или представить там использовать как jQuery(selector).ajax(dataString:--);

МАЕ это поможет вам спасибо!

+0

Я сейчас смотрю. Спасибо за ваш ответ. Я собираюсь провести некоторое исследование по решениям JQuery/ajax. –

Смежные вопросы