Como forçar um navegador a salvar o conteúdo do campo para mais tarde?

Como forçar um navegador a salvar o conteúdo do campo para mais tarde?

Eu uso o Chrome. Em alguns sites parece que ele lembra um número imenso de entradas para diferentes áreas. Acho isso muito útil. No entanto, em alguns sites, isso não funciona tão bem. Um exemplo que está me deixando louco está no console da AWS. Ao atualizar uma função Lambda, preciso copiar um arquivo do S3. Há um campo que requer um URL muito longo que sempre preciso recuperar em outro lugar. Captura de tela do AWS Lambda

O HTML do campo é:

<input type="text" autocomplete="on" id="awsui-textfield-5"
class="awsui-textfield awsui-textfield-type-text">

Por causa disso, autocomplete="on"eu esperaria que o Chrome apenas "fizesse a coisa certa™", mas talvez porque o campo não esteja em uma <form>situação que não está.

Quais condições devem ocorrer para que um campo seja salvo?

Freqüentemente crio bookmarklets ou userscripts para resolver pequenos incômodos com sites. Eu adoraria fazer isso aqui, mas não sei o que precisa mudar.

Por favor, avise.

Responder1

Eu resolvi isso para este caso! Acho que a solução provavelmente se aplicará a muitos outros. Eu fiz umbookmarklete um pedaço de javascript que você pode colar em um console "Ferramentas do desenvolvedor".

var jq_tag=document.createElement('script');
jq_tag.setAttribute('src','//cdnjs.cloudflare.com/ajax/libs/jquery/3.2.0/jquery.min.js');
document.head.appendChild(jq_tag);
setTimeout(function() {
  var tf=$(document.activeElement);
  var ff=$('<form method="post" target="_blank" action="//example.com"><input type="submit" value="Save this field data"></form>');
  tf.after(ff);
  ff.prepend(tf);
}, 2000);

Por design (para torná-lo de propósito mais geral), é necessário que você coloque o cursor no campo de texto em questão. Ao executar o JS, um botão "Salvar estes dados de campo" aparecerá após o campo.

Esta é uma análise do que está fazendo linha por linha:

# Create a script tag in memory.
# Make it source jQuery.
# Attach it to do the <head> of the document which begins loading it.
# Barbaric workaround for waiting for the JS to load.
# Get the element that has focus.
# Create a form that will POST to example.com in a new tab.
# Attach the form to the DOM right after the "focused element".
# Detach the "focused element" and reattach it inside the new form element.

Aqui está em ação... insira a descrição da imagem aqui

Responder2

informação relacionada