您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
对所有网站生效,支持动态插入的input和select。浏览器需要安装Tampermonkey或者Greasemonkey扩展,安卓手机浏览器推荐Yandex或者Kiwi浏览器。支持SPA(比如vue)
当前为
- // ==UserScript==
- // @name fill the input and select of form as last time inputed automatically
- // @name:zh-CN 使用上次输入的值自动填写表格
- // @namespace http://tampermonkey.net/
- // @description This script supports SPA like vue。
- // @description:zh-CN 对所有网站生效,支持动态插入的input和select。浏览器需要安装Tampermonkey或者Greasemonkey扩展,安卓手机浏览器推荐Yandex或者Kiwi浏览器。支持SPA(比如vue)
- // @require https://greasyfork.org/scripts/440334-jquery-like-spa-operation-library/code/jQuery-like%20SPA%20operation%20library.js?version= 1020513
- // @include http://*
- // @include https://*
- // @grant GM_setValue
- // @grant GM_getValue
- // @author yechenyin
- // @license MIT
- // @version 1.0.2
- // ==/UserScript==
- jQuery.fn.saveChangedValue = function () {
- let that = this
- that.on('change', function () {
- let href = 'inputed_' + location.href.replace(/\?.*/, '')
- let inputs = ''
- if (typeof GM_getValue === 'undefined')
- inputs = localStorage[href]
- else if (GM_getValue(href)) {
- inputs = GM_getValue(href)
- }
- if (inputs)
- inputs = JSON.parse(inputs)
- else
- inputs = {}
- //console.log(this.constructor.name)
- //console.log(Object.keys(this))
- let name = ''
- if (this.id)
- name = '#' + this.id
- else if ($(this).attr('name'))
- name = $(this).attr('name')
- else {
- for (let i = 0; i < that.length; i++) {
- if (this == that[i])
- name = i
- }
- }
- inputs[name] = $(this).val()
- if (typeof GM_setValue === 'undefined')
- localStorage[href] = JSON.stringify(inputs)
- else
- GM_setValue(href, JSON.stringify(inputs))
- //console.log(GM_getValue(href))
- })
- }
- jQuery.fn.recoverSavedValue = function () {
- this.inserted(function () {
- let that = this
- let href = 'inputed_' + location.href.replace(/\?.*/, '')
- //console.log(GM_getValue(href))
- let inputs = ''
- if (typeof GM_getValue === 'undefined')
- inputs = localStorage[href]
- else if (GM_getValue(href)) {
- inputs = GM_getValue(href)
- }
- if (inputs)
- inputs = JSON.parse(inputs)
- else
- inputs = {}
- //console.log(inputs)
- if (Object.keys(inputs).length) {
- this.each(function () {
- let name = ''
- if (this.id)
- name = '#' + this.id
- else if ($(this).attr('name'))
- name = $(this).attr('name')
- else {
- for (let i = 0; i < that.length; i++) {
- if (this == that[i])
- name = i
- }
- }
- if (inputs.hasOwnProperty(name)) {
- $(this).val(inputs[name])
- }
- })
- }
- })
- }
- window.onload = function () {
- $('input, select').recoverSavedValue()
- $('input, select').inserted(function () {
- $('input, select').saveChangedValue()
- })
- }