#背景
需要给一个网站上的数值修改成指定数值,并确定,继续下一页。
##问题
同一个页面多个input,值要求一样,一个个复制太慢。
#解决思路
通过油猴批量修改指定值,并自动确定。为了避免短时间重复提交,用了3秒延时。
#代码如下:
// ==UserScript==
// @name 自动输入值
// @namespace http://tampermonkey.net/
// @version 0.1
// @description 自动输入值
// @author You
// @match http://*/*
// @icon data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==
// @grant none
// ==/UserScript==
(function() {
function sub(){
var x=document.querySelectorAll("input[name=score]");
var i;
for (i = 0; i < x.length; i++) {
x[i].value = "20";
}
var a = document.querySelector("input[name=update]");
a.click();
}
setTimeout(sub,3000);
var _alert=window.alert;
window.alert=function(){
return true;
}
})();
#写作过程中的难点
1、document.querySelectorAll() 定位页面中全部元素,for循环指定元素。
2、document.querySelector(“input[name=update]”);找指定元素。
3、a.click();点击元素
4、自动点击alert弹窗,网上搜索发现有用confirm(),结果试了好久用不成。后来通过修改弹窗的方式,自动确定了。
5、延时setTimeout()的应用
#总结
延时,找元素,修改数据,自动提交,自动确定。