【问题标题】:Is There An HTML Function To Execute href?是否有执行 href 的 HTML 函数?
【发布时间】:2018-12-29 01:08:25
【问题描述】:

我有一个 HTML 登录脚本,当它被执行时,它会打开一个网页并让我登录。它可以工作,但是在登录页面之后,还有另一个网页打开,我需要点击一个链接到进入网站

我尝试在我的 HTML 脚本中添加一个额外的主体,该主体基于 autoClick 功能来点击下一个屏幕上的 href,但它不起作用。

此代码有效并让我登录:

<html> 
<head> 
<title>MSP_P2_LogIn</title>
  <script>
    function loginForm() {            
    document.mainform.submit();
    }
  </script>
</head>
<body onload="loginForm()">
    <form action="https://tnt.fnfismd.com/" name="Login" id="mainform" 
    method="post">
    <input type="text" name="user" title="username" id="username" 
     value="MYUSERNAME">
    <input type="password" name="password" title="passwordtext" 
     id="passwordText" value="MYPASSWORD">
    <input type="submit" class="loginBtn" value="LOG IN">
</body>
</html>

这是我点击第二页上的链接的尝试:

<html> 
<head> 
<title>MSP_P2_LogIn</title>
<script>
    function loginForm() {            
    document.mainform.submit();
    }

    function autoClick(){
    document.getElementById('form1').click();
    }

</script>
</head>
 <body onload="loginForm()">
<form action="https://tnt.fnfismd.com/" name="mainform" method="post">
    <input type="text" name="user" title="username" id="username" 
    value="MYUSERNAME">
    <input type="password" name="password" title="passwordtext" 
    id="passwordText" value="MYPASSWORD">
    <input type="submit" class="loginBtn" value="LOG IN">
 </body>

 <body onload="setTimeout('autoClick();',3000);">
<a class="Dialog" form="form1" nowrap="" href="RegionChoice.aspx? 
    RegNm=CICSA2&amp;RPCAlias=JAXPLEX1.CICSA2&amp;RegDesc=P2 Test">P2 
    Test</a>
 </body>
 </html>

以下是来自 (https://tnt.fnfismd.com/iportal25/RegionChoice.aspx) 的源代码。 href 包含在表单中,但我不知道如何提交表单以按下正确的链接,或者我是否可以在不提交其他表单的情况下单击链接?

<td class="Dialog" nowrap=""><a href="RegionChoice.aspx? 
RegNm=CICSA2&amp;RPCAlias=JAXPLEX1.CICSA2&amp;RegDesc=P2 Test">P2 Test</a> 
</td>
<form name="Form1" id="Form1" action="./RegionChoice.aspx" method="post">

<input name="__VIEWSTATE" id="__VIEWSTATE"type="hidden"value="lboWwIT5IuhiPyClVYu+Sfk5Vxu3pE5R6gD6w61JEcc6BFJgYJF2HGxpEwJ6gHyCTEznH6N2 Mgr992qdhWYLFPBybb1QfCnI1vm9ZlY6pv0=">

<input name="__VIEWSTATEGENERATOR" id="__VIEWSTATEGENERATOR" type="hidden" 
value="CE974B8E">

<input name="__VIEWSTATEENCRYPTED" id="__VIEWSTATEENCRYPTED" type="hidden" 
value="">

我希望能够登录到这个站点 (https://tnt.fnfismd.com/),它与第一个 HTML 脚本一起工作。然后我登录后,这个页面会自动显示(https://tnt.fnfismd.com/iportal25/RegionChoice.aspx),我需要点击href。我是新手,我被困住了......

【问题讨论】:

    标签: html login-script


    【解决方案1】:

    等到 DOM 被加载,直到你对它触发函数。

      document.addEventListener("DOMContentLoaded", function(event) {
        console.log("DOM fully loaded and parsed");
      });
    

    【讨论】:

    • 这仍然不起作用。我添加了 EventListener,但它仍然无法正常工作。我可以登录,但登录后有一个区域选择,其中包含两个用于 PROD 或 P2 测试的链接。我需要在登录屏幕的不同页面上单击 href
    【解决方案2】:

    我得到了这个工作。任何需要登录 MSP 的人都可以使用以下 HTML 脚本:

    <html> 
    <head> 
        <title>MSP_Prod_LogIn</title>
        <script>        
            document.addEventListener("DOMContentLoaded", function loginForm(){
            document.mainform.submit();
            window.setTimeout('window.location="https://eportal.fnfismd.com/","";',1000);       
            window.close("eportal.fnfismd.com","");
            window.open("https://eportal.fnfismd.com/","");
            });
        </script>
    </head>
    <body onload="loginForm()">
    <form action="https://eportal.fnfismd.com/" name="Login" id="mainform" method="post">
        <input type="text" name="user" title="username" id="username" value="[Enter 
         Username Here]">
        <input type="password" name="password" title="passwordtext" id="passwordText" 
        value="[Enter Password Here]"> <input type="submit" class="loginBtn" value="LOG 
        IN">        
    </body>
    </html>
    

    然后像这样在 C++ 中执行:

    public void button1_Click(object sender, EventArgs e) 
    {
    System.Diagnostics.Process.Start(@"iexplore.exe", 
        @"C:\HTML_Log_On_Scripts\MSP_Prod_Login.html");
    }
    

    像魅力一样工作

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-23
      • 1970-01-01
      • 2016-10-13
      • 1970-01-01
      • 2015-12-06
      • 1970-01-01
      相关资源
      最近更新 更多