javascript - 自动登录到网络表单不起作用
问题描述
抱歉,如果这听起来很幼稚。我创建了一个带有表单的 html 页面,该表单在提交时登录到另一个网站。我用两个网站对此进行了测试,它适用于其中一个(我们称之为网站 A),而不适用于另一个网站(网站 B)。我在 A 和 B 的页面源中发现的区别在于,网站 B 在表单上设置了 action 属性,如下所示:
<form name="LoginForm" method="post" action="./" onsubmit="javascript:return WebForm_OnSubmit();" onkeypress="javascript:return WebForm_FireDefaultButton(event, 'btnlogin')" id="LoginForm" class="form-horizontal" autocomplete="off">
我的 HTML 代码:
<html><head></head>
<body style="word-wrap: break-word;">
<form id="LoginForm" target="_self" method="post" action="website B login page">
<input type="hidden" name="tbUsername" value="StarFort">
<input type="hidden" name="tbPassword" value="325starfort306">
</form>
<script type="text/javascript">
// submit the form into iframe for login into remote site
document.getElementById('LoginForm').submit();
// once you're logged in, change the source url (if needed)
var iframe = document.getElementById('frame');
iframe.onload = function() {
if (iframe.src != "Wesite B home page") {
iframe.src = "Wesite B home page";
}
}
</script>
<iframe id="frame" name="frame" width="100%" height="100%" scrolling="yes" style="border:0" target="_self" src="Wesite B home page"></iframe>
</body></html>
关于可能是什么问题的任何建议?
谢谢!!!
解决方案
该action
属性指定表单将被提交到的页面。当表单从网站 A 提交时,它会重定向到“/ct/ct_logon.asp”。但是,当从网站 B 提交表单时,不会发生重定向。要重定向,请修改action
属性,使其包含您提交表单条目的页面。
推荐阅读
- prolog - 为什么 Prolog 规则有时会以类似的输入返回 False?
- python - Python:编写搜索结果 URL
- laravel - 无法使用 Laravel 在 Heroku 上存储文件
- css - 设置问号点颜色?可能的?
- docker - 使用 Google Cloud Platform 的 Gitlab-CI 自动缩放未按预期生成
- php - 颁发令牌和刷新令牌:Laravel /jwt
- emacs - Emacs Prelude:如何禁用 perl 文件的 smartparens?
- dart - Android Manifest com.apptreesoftware.barcodescan 中的 Flutter 未解析包
- javascript - 从嵌套元素中检索链接
- c# - 在 PDF 表单中使用 ItextSharp 的动态内容