我正在尝试使用username/password
在网站上自动填充javascript
字段,但是使用.value
不适用于该特定页面。文本已填写,但网站报告username/password
为空,好像没有任何数据一样。 Safari的自动填充功能在iPhone上也经常会遇到问题,但是Chrome可以完美地处理它,因此很显然有一种方法。
我正在快速使用WkWebView
并评估javascript以尝试自动填充数据。
如果有帮助,请访问以下网站:login.usfca.edu/login/login
我尝试过的代码:
document.getElementById('username').value='TestUsername';
document.getElementById('password').value='TestPassword';
答案 0 :(得分:0)
您可以使用此代码自动填充
<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>
答案 1 :(得分:0)
注意:我不是一个敏捷的程序员,但是考虑到您使用纯HTML编写脚本。 如果(如果您使用的不是纯HTML),只需检查您的元素以获取
id
相同的元素,这样就可以确保引用正确的id
。
id
分配值,则必须为输入提供getElementById
。
演示-
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
可选中,您可以在填写输入内容时从浏览器中缓存建议。