簡體   English   中英

使用JavaScript自動填充文本字段的替代方法?

[英]Alternate ways to autofill textfield using javascript?

我正在嘗試使用javascript自動填充網站上的username/password字段,但是使用.value不適用於此特定頁面。 文本已填寫,但是網站報告username/password空,好像沒有任何數據一樣。 Safari自動填充功能在iPhone上也經常會遇到問題,但是Chrome可以完美地處理它,因此很顯然有一種方法。

我正在swift中使用WkWebView並評估javascript以嘗試自動填充數據。

如果有幫助,請訪問以下網站:login.usfca.edu/login/login

我嘗試過的代碼:

document.getElementById('username').value='TestUsername';
document.getElementById('password').value='TestPassword';

您可以將此代碼用於自動填充

<head>
  <meta charset="utf-8">
  <title>Prefill inputs</title>
</head>

<body><p>Example Enter Apple...</p>
 Enter: <input id="main" class="input_1" list="competition" type="text" name="competition">
  <datalist id="competition" class="listos">
    <option value="Mango">Mango</option>
    <option value="Apple">Apple</option>
    <option value="Orange">Orange</option>
  </datalist>



  <script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
  <script>
    const $main = $('#main');
    const $inputs = $('.sub');

    const values = {
      trigger: 'community shield',
      communityShield: ['one', 'two', 'three']
    };

    $main.on('keyup input', function () {
      const inputValue = this.value.toLowerCase()
      if (inputValue === values.trigger) {
        $inputs.each(function (i, el) {
          el.value = values.communityShield[i];
        });
      }
    });
  </script>
</body>

</html>

注意:我不是一個敏捷的程序員,但是考慮到您使用純HTML編寫腳本。 如果(如果您未使用純HTML的話),只需檢查您的元素以獲取相同的id ,以便可以確保引用正確的id

  • 如果要使用getElementById分配值,則必須為輸入提供id


示范-

 document.getElementById('username').value='TestUsername'; document.getElementById('password').value='TestPassword'; 
 <form action="#" autocomplete="on"> username: <input type="text" name="username" id="username"><br><br> password: <input type="password" name="password" id="password"><br><br> <input type="submit"> </form> 

在哪里, autocomplete 可選 ly在填充輸入時為您提供來自瀏覽器的緩存建議。

暫無
暫無

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

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