Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Bom/boa dia/tarde/noite, estou com um problema:
Estou fazendo uma extensão para preenchimento automático de login e formulário, em alguns sites funciona normalmente, mas existe uns sites que não permitem o preenchimento, e são eles que eu estou buscando auternativas.
eu injeto o texto no input $("input[type=text]").val("Meu texto") mas quando fico observando o valor ou quando envio o formulário simplesmente diz que o input não tem valor (não foi preenchido) mesmo vendo o texto nele.
O que pode ser?
Que tipo de mandinga é essa?
E o que posso fazer pra contornar?
>
1 hora atrás, Jack Oliveira disse:
Poderia posta o código para melhor entender o que quer
é simples entender:
Alguns sites meio que não querem que alguns scripts injetem valores nos inputs deles. Então colocam uma maneira de verificar se uma pessoa realmente digitou ou colou o texto no input, então o simples fato de colocar:
$("input[type=text]").val("Meu texto")
ou
document.getElementById("meuInput").value = "Meu texto";
não funciona.
Por que ao clicar em submeter/enviar o site avisa que o input está vazio (por que uma pessoa não digitou/colou).>
5 horas atrás, quimera disse:
é simples entender:
Alguns sites meio que não querem que alguns scripts injetem valores nos inputs deles. Então colocam uma maneira de verificar se uma pessoa realmente digitou ou colou o texto no input, então o simples fato de colocar:
$("input[type=text]").val("Meu texto")
ou
document.getElementById("meuInput").value = "Meu texto";
não funciona.
Por que ao clicar em submeter/enviar o site avisa que o input está vazio (por que uma pessoa não digitou/colou).
Já tentou fazer assim
**Exemplo**
<script>
function onChangetel(e) {
var nome = document.getElementById('nome').value;
var email = document.getElementById('email').value;
var tel = document.getElementById('tel').value;
funcao(nome,email,tel);
}
function funcao(nome, email, telefone) {
console.log("Nome: " + nome);
console.log("E-mail: " + email);
console.log("Telefone: " + telefone);
}
</script>
<input id="nome" type="text" value="Meu Site"/>
<input id="email" type="email" value="demo@gmail.com"/>
<input id="tel" type="tel" onchange="onChangetel()" value="(00)00000-0000"/>
Obs: você não pode ter mais de um ID igual na mesma página
Veja alguns ex aqui
[Link1](http://jsfiddle.net/aWSSV/19/)
[Link2](https://cursos.alura.com.br/forum/topico-pegar-valor-do-input-com-javascript-62528)
[Link3](https://www.devmedia.com.br/alert-em-javascript/37208)
Espero que possa lhe ajudar>
17 horas atrás, Jack Oliveira disse:
Já tentou fazer assim
Exemplo
<script>
function onChangetel(e) {
var nome = document.getElementById('nome').value;
var email = document.getElementById('email').value;
var tel = document.getElementById('tel').value;
funcao(nome,email,tel);
}
function funcao(nome, email, telefone) {
console.log("Nome: " + nome);
console.log("E-mail: " + email);
console.log("Telefone: " + telefone);
}
</script>
<input id="nome" type="text" value="Meu Site"/>
<input id="email" type="email" value="demo@gmail.com"/>
<input id="tel" type="tel" onchange="onChangetel()" value="(00)00000-0000"/>
Obs: você não pode ter mais de um ID igual na mesma página
Veja alguns ex aqui
[Link1](http://jsfiddle.net/aWSSV/19/)
[Link2](https://cursos.alura.com.br/forum/topico-pegar-valor-do-input-com-javascript-62528)
[Link3](https://www.devmedia.com.br/alert-em-javascript/37208)
Espero que possa lhe ajudar
Essa seria a solução se o site fosse meu, estou fazendo um extensão para o chrome/opera e por isso digo que em alguns caso essa não é a solução. O site simplesmente barra a inclusão de valor.>
Em 14/05/2020 at 10:40, quimera disse:
é simples entender:
Alguns sites meio que não querem que alguns scripts injetem valores nos inputs deles. Então colocam uma maneira de verificar se uma pessoa realmente digitou ou colou o texto no input, então o simples fato de colocar:
$("input[type=text]").val("Meu texto")
ou
document.getElementById("meuInput").value = "Meu texto";
não funciona.
Por que ao clicar em submeter/enviar o site avisa que o input está vazio (por que uma pessoa não digitou/colou).
Quer seja mostra o valor do input que esta sendo vazio tente do algo assim
<?php
swal.fire(
{title: "Cadastro de Cliente!",
animation: true,
customClass:'bounceInDown',
showCancelButton: true,
confirmButtonText:"Confirmar",
html:"<form id='formValidate' class='formValidate'>Cadastra-se aqui"+
"<input id='nome' name='nome' type='text' class='form_input' required minlenght='2' placeholder='Nome Completo' required/>" +"</br>" +
"<input id='telefone' name='telefone' class='form_input' required placeholder='(00) 0000-0000' required/>" + "</br>" +
"<input id='email' name='email' type='email' class='form_input' required placeholder='E-mail' required/>" + "</br>" +
"<input id='login' name='login' type='text' class='form_input' required placeholder='Login' required/>" + "</br>" +
"<input id='senha' name='senha' type='password' class='form_input' required placeholder='Digite uma senha' required/>" +
"</form>",
preConfirm: () => {
nome = document.getElementById('nome').value;
telefone = document.getElementById('telefone').value;
email = document.getElementById('email').value;
login = document.getElementById('login').value;
senha = document.getElementById('senha').value;
if(!nome || !telefone || !email || !login || !senha) return;
return [nome , telefone, email, login, senha]
}
})
?>
Para que as pessoas não colar nada dentro do input e apenas digitar usa assim
<input type="text" name="telefone" id="bloqueio"></input>
No teu script faz isso
Opção 1
$(document).ready(function() {
$("#bloqueio").bind('Não pode colar, apenas digitar!', function(e) {
e.preventDefault();
});
});
Opção 2
document.getElementById('#bloqueio').addEventListener(
'Nao pode colar, Apenas digitar',
function(E){
E.preventDefault();
return false;
},
true
);
Poderia posta o código para melhor entender o que quer