如何在不导致页面重新加载(即在后台)的情况下将表单提交给第三方网站?
对于某些背景,我正在尝试以编程方式在后台将用户登录到他们的Google帐户.
var div = document.createElement("div"); div.innerHTML = FORM_HTML; var form = div.getElementsByTagName("form")[0]; form.action = "https://www.google.com/accounts/ServiceLoginAuth"; form.GALX.value = FORM_GALX; // dynamically obtained using AJAX form.Email.value = USER_EMAIL; form.Passwd.value = USER_PASSWORD; form.submit();
这会让我登录并打开我的Google信息中心.如何防止form.action重定向?
请注意,此div实际上从未添加到文档中,这是首选但不是必需的.
解决方法
您可以设置目标以将表单提交给IFRAME
像那样
像那样
<form target="transFrame" method="POST" action="http://...." ></form> <iframe style="" name="transFrame" id="transFrame"></iframe>