У меня на странице следующее:
<iframe width="1" height="1" name="hidden-iframe">
<form id="myform" method="POST" action="https://mysite.com/process-form-data.php" target="hidden-iframe">
<input name="data" />
<input type="submit" value="Submit" />
</form>
<script type="text/javascript">
$('#myform').submit(function(){
$('#myform').submit();
setTimeout("location.reload(true);",5000);
return false;
});
</script>
Я хочу, чтобы форма была помещена в скрытый iframe, подождите 5 секунд (чтобы у данных формы было достаточно времени для отправки), а затем обновите страницу.
Этот процесс прекрасно работает, если действие формы - http.
Однако, когда действие формы - https, когда пользователь нажимает кнопку Отправить, данные формы отправляются, и браузер загружает https://mysite.com/process-form-data.php. Данные формы не публикуются в скрытом iframe, время ожидания не превышает 5 секунд, а исходная страница не обновляется.
Есть идеи, как добиться поставленной цели? Я должен добавить, что действие формы находится в другом домене, чем сама страница. Очевидно, что здесь должна быть какая-то проблема междоменной безопасности. Есть ли лучший способ сделать это? Я открыт для любых предложений.