Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa noite,
Fiz uma caixa de texto e gostaria de saber como faço para chamar um texto ao digitar um valor na input.
Ex: ao digitar 1320 deve aparecer o nome João na outra input.
Obrigado!
<tr>
<td>Cod:</tr>
<td>
<input type="text" name="Nomes" size="5"></br></br>
<textarea name="nome pessoal" rows="10" cols="50"></textarea>
</td>
</tr>
Veja este outro exemplo utilizando uma lista de nomes com seus respectivos códigos.
Digite um código entre "1320" e "1329" e tecle "Enter".
>
1 hora atrás, Eziquiel disse:
Veja este outro exemplo utilizando uma lista de nomes com seus respectivos códigos.
Digite um código entre "1320" e "1329" e tecle "Enter".
http://codepen.io/Eziquiel/pen/zZLQYJ?editors=0010
Obrigado Eziquiel,
Não consegui fazer ele funcional no navegador, sabe porque?
<html>
<body>
<tr>
<td>Cod:</tr>
<td>
<input type="text" name="Nomes" size="5"></br></br>
<textarea name="nome pessoal" rows="10" cols="50"></textarea>
</td>
</tr>
<script>
var dados = [{"codigo": "1320", "Nome": "João"},
{"codigo": "1321", "Nome": "Maria"},
{"codigo": "1322", "Nome": "Tiago"},
{"codigo": "1323", "Nome": "Pedro"},
{"codigo": "1324", "Nome": "Rosa"},
{"codigo": "1325", "Nome": "Washington"},
{"codigo": "1326", "Nome": "Roberta"},
{"codigo": "1327", "Nome": "Marcos"},
{"codigo": "1328", "Nome": "Lucas"},
{"codigo": "1329", "Nome": "Tamirez"}
];
$('input[name="Nomes"]').change(function(){
$('textarea[name="nome pessoal"]').val(pegaNome($(this).val()));
});
function pegaNome(cod){
var nome = "Não existe na lista"
$.each(dados, function(i, val){
if (val.codigo == cod)
nome = val.Nome;
});
return nome;
}
</script>
</body>
</html>
>
1 hora atrás, Eziquiel disse:
Veja este outro exemplo utilizando uma lista de nomes com seus respectivos códigos.
Digite um código entre "1320" e "1329" e tecle "Enter".
http://codepen.io/Eziquiel/pen/zZLQYJ?editors=0010
>
1 hora atrás, Eziquiel disse:
Adicione esta linha no seu html dentro da tag "head"
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
>
5 minutos atrás, Eziquiel disse:
Adicione esta linha no seu html dentro da tag "head"
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
Eziquiel,
Ficou muito bom, muito obrigado pela sua ajuda.
Sem querer abusar de sua ajuda, seria possível fazer um botão que ao clicar nele ele copia o nome que esta dentro da input?Consegui fazer o botão para copiar.
Outra duvida,
Tem como chamar dois nomes com o mesmo codigo?
>
1 hora atrás, Eziquiel disse:
Aí está!
http://codepen.io/Eziquiel/pen/zZLQYJ?editors=0010
Ficou perfeito, teve que fazer algumas alterações, ficou bonito o codigo.
Como posso colocar uma quebra de linha?
Notei que '\n' significa quebra de linha, porem não esta quebrando no meu caso.
<script>
var dados = [{"codigo": "1320", "Nome": ["João","Pedro","Jose","Rosa"]},
{"codigo": "1321", "Nome": ["Maria"]},
{"codigo": "1322", "Nome": ["Tiago"]},
{"codigo": "1323", "Nome": ["Jose"]},
{"codigo": "1324", "Nome": ["Jorge"]},
{"codigo": "1325", "Nome": ["Karol"]}
];
$('input[name="Nomes"]').change(function(){
$('textarea[name="nome pessoal"]').val(pegaNome($(this).val()));
});
function pegaNome(cod){
var nome = "Não existe na lista"
<!-- $.each(dados, function(i, val){--->
var nomes = "";
$.each(dados, function(i, val){
if (val.codigo == cod)
{
nome = val.Nome;
$.each(nome, function(index, value){
nomes += value + '\n';
});
}
});
return nome;
}
</script>
Já encontrei ainde eu estava errando, faltou a letra s no return nomes
Obrigado pela grande ajuda!Eziquiel,
Criei uma input com o nome cliente e a ideai é ao preencher o nome do cleinte ele subistitua no textarea onde consta (NOME CLIENTE / RESPONSÁVEL) pelo nome que foi digitado no input, o codigo 1320 serve para chamar um aviso padrão.Pode ajudar por favor?
Veja se é isto?
(Eu mudei os nomes dos inputs. Se atente a isso quando for reutilizar o código.)
>
1 hora atrás, Eziquiel disse:
Veja se é isto?
(Eu mudei os nomes dos inputs. Se atente a isso quando for reutilizar o código.)
http://codepen.io/Eziquiel/pen/zZLQYJ?editors=0010
É isso mesmo, ficou muito bom.
outro detalhe, como um mesmo codigo tem mais de uma AVISO PADRÃO, seria possiivel alterar nos demais avisos?
tentei um replaceAll mais não deu certo.
Ex: todo aviso que tenha (NOME CLIENTE / RESPONSÁVEL) substituir peleo nome.
Aí está!
http://codepen.io/Eziquiel/pen/zZLQYJ?editors=0010
Note que há uma função para o replaceAll criada no final do código javascript.
String.prototype.replaceAll = function(searchStr, replaceStr) {
var str = this;
searchStr = searchStr.replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&');
return str.replace(new RegExp(searchStr, 'gi'), replaceStr);
};Oi Eziquiel,
Funciona na perfeição, obrigado.
Fiz mais dois campos onde tenho uma quantidade de X para a matricula do cleinte e outro campo para o telefone do cliente,
acontece que ao digitar o numero ele aparece nos dois campo, então gostaria de saber se é possivel limitar a quandidade de caractres do primeiro campo para não dar conflito com o outro ou fazer com que a ferramenta entenda isso.
Desde já agradeço.
No primeiro use assim:
$('textarea[name="nome pessoal"]').val(text.replaceAll(' XXXXXX ',` ${nome} `));
No segundo use assim:
$('textarea[name="nome pessoal"]').val(text.replaceAll(' XXXXXXXX ',` ${nome} `));
(Lembrando que deve haver um espaço antes de depois de "XXXXXX", senão não irá funcionar)Exemplo: Ele altera apenas o primeiro campo e ignora o segundo.
>
50 minutos atrás, Eziquiel disse:
No primeiro use assim:
$('textarea[name="nome pessoal"]').val(text.replaceAll(' XXXXXX ',` ${nome} `));
No segundo use assim:
$('textarea[name="nome pessoal"]').val(text.replaceAll(' XXXXXXXX ',` ${nome} `));
(Lembrando que deve haver um espaço antes de depois de "XXXXXX", senão não irá funcionar)
Oi,
Testei e ficou muito bom, mais parece que deixou de funcionar no Explorer 11 ao mdificar essas linhasTenta usar assim:
$('textarea[name="nome pessoal"]').val(text.replaceAll(' XXXXXX ',' '+nome+' '));
e assim:
$('textarea[name="nome pessoal"]').val(text.replaceAll(' XXXXXXXX ',' '+nome+' '));Obrigado Eziquiel, agora sim funciona no explorer.
Grato!
Boa tarde,
Gostaria de fazer uma alteração nesse projeto, estou colocando os códigos em uma caixa de seleção, qual parte do codigo tenho que modificar para que ao selecionar um código ele traz a mascara?
Desde já agradeço
Olá.
Uma maneira bem simples é esta, utilizando JQuery.
http://codepen.io/Eziquiel/pen/zZLQKy?editors=0010