Есть ли функция HTML для выполнения href? - PullRequest
0 голосов
/ 29 декабря 2018

У меня есть скрипт входа в HTML, который при запуске открывает веб-страницу и регистрирует меня. Он работает, но после страницы входа открывается другая веб-страница, на которую мне нужно нажать ссылку, чтобыполучить доступ к сайту

Я попытался добавить в мой HTML-скрипт дополнительное тело, основанное на функции autoClick, чтобы щелкнуть ссылку на ссылку на следующем экране, но это не работает.

этот код работает и регистрирует меня:

<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. Я новичок в этом, и я застрял ...

Ответы [ 2 ]

0 голосов
/ 05 января 2019

Я получил это работает.Любой, кому нужно войти в 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");
}

Работает как шарм

0 голосов
/ 29 декабря 2018

Подождите, пока DOM не загрузится, пока вы не запустите против него функции.

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