簡體   English   中英

如何自動填寫簡單表格並單擊JavaScript中的提交以獲取Chrome擴展程序

[英]How to automate filling a simple form and clicking submit in JavaScript for a chrome extension

數天以來一直在嘗試執行此操作,但是失敗並搜索了示例,但尚未找到有幫助的示例。

我想通過填寫詳細信息並以編程方式單擊提交來瀏覽網頁。

該頁面如下:

<form method='post' action='login.php'>
    <table>
        <tr>
        <td>Email Address: </td>
        <td ><input type='Text' size='30' name='email'></td>
        </tr><tr>
        <td>Password: </td>
        <td ><input type='password' size='30' name='password'></td>
        </tr><tr>
        <td colspan=2>&nbsp;</td>
        </tr><tr>
        <td>&nbsp;</td>
        <td  align='left'><input type='Submit' value='Log in'></td>
        </tr>
        <td colspan=2>&nbsp;</td>
        <tr><td colspan=2><hr></td></tr>
    </table>
</form>

我無法更改上述現有網頁,因此,我想在無法通過登錄頁面的那一刻將代碼包含在用JavaScript編寫的chrome擴展程序中,以節省大量時間!

我曾經是一個遙遠的程序員,但還不完全了解JavaScript語法。

我的問題之一是表格似乎沒有ID。

有人可以幫忙嗎?

到目前為止,感謝您的幫助,但我仍在努力,因此添加了更多詳細信息。 過去,我已經使用VB在IE中使用VB在IE中進行了提交:

    Sub PressSubmit(IE)
    With IE.Document
    Set elems = .getElementsByTagName("input")
    For Each e In elems
        If (e.getAttribute("value") = "Log in") Then
            e.Click
            Exit For
        End If
    Next e

IE.Document.all("email").Value = "me@email.address"
IE.Document.all("password").Value = "myPassword"
Call PressSubmit(IE)

但是現在我需要在Chrome上執行相同的操作,而我在JavaScript語法方面苦苦掙扎,這對我來說是新的,是否有人可以給我提供JavaScript版本或更好的版本,我可以從示例中學到嗎?

您可以使用document.querySelector() Element.querySelector() attribute selectors to set values at elements, call 。點擊() on element to submit `

<!DOCTYPE html>
<html>

<head>
</head>

<body>
  <form method='post' action='login.php'>
    <table>
      <tr>
        <td>Email Address: </td>
        <td>
          <input type='Text' size='30' name='email'>
        </td>
      </tr>
      <tr>
        <td>Password: </td>
        <td>
          <input type='password' size='30' name='password'>
        </td>
      </tr>
      <tr>
        <td colspan=2>&nbsp;</td>
      </tr>
      <tr>
        <td>&nbsp;</td>
        <td align='left'>
          <input type='submit' value='Log in'>
        </td>
      </tr>
      <tr>
        <td colspan=2>&nbsp;</td>
      </tr>
      <tr>
        <td colspan=2>
          <hr>
        </td>
      </tr>
    </table>
  </form>
  <script>
  var form = document.querySelector("form[action='login.php']");
  var submit = form.querySelector("input[type='submit'][value='Log in']");
  if (submit.length) {  
    form.querySelector("input[name='email']").value = "me@email.address";
    form.querySelector("input[type='password']").value = "myPassword";
    submit.click();
  }
  </script>
</body>

</html>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM