Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Como executar uma função quando o user digita na caixa de texto sem utilizar o onkeyup (ou qualquer outro evento do tipo) na caixa de texto
Para pesquisa dinamica, se usa ajax? certo, então para executar a função, é precisso de um onkeyup; então onde fica onkeyup na caixa de texto do site twitter, ou do google em ingles? caso eles não utilizam ajax, como conseguem fazer tais coisas? seriam coisas do além? :ermm:
>
Para pesquisa dinamica, se usa ajax? certo, então para executar a função, é precisso de um onkeyup; então onde fica onkeyup na caixa de texto do site twitter, ou do google em ingles? caso eles não utilizam ajax, como conseguem fazer tais coisas? seriam coisas do além? :ermm:
Está obfuscado, ou você acha que o Google deixaria o código javascript dele ali, todo bonitinho para qualquer um vim e ver como funciona? (se bem que seria ótimo se fosse assim)
Para ser mais exato, o Google usa onkeydown, no momento que você digita algo na barra (evento onkeydown executado) ele envia o valor digitado via ajax para o servidor, o servidor então retorna em json as sugestões para serem adicionadas à página.
Se tiver o firebug instalado você pode ver +ou- como funciona, abra o firebug, aceda à página de pesquisa, vá na aba javascript, coloque um breakpoint na linha 70 e digite algo no campo de texto.
Então como se faz isso? (ofuscar o onkeydown da caixa de texto)
É só colocar o evento dentro do Javascript.
Ex:
document.getElementById( 'textarea' ).onkeydown = function() {
//Acontece alguma coisa
}então onde tá o erro ?
<html>
<head>
<title>Ver se senhas são iguais</title>
<script>
document.getElementById( 'senha2' ).onkeydown = function comprovarSenha(){
senha1 = document.f1.senha1.value
senha2 = document.f1.senha2.value
if (senha1 == senha2)
alert("As duas senhas são iguais")
else
alert("As duas senhas são diferentes")
}
</script>
</head>
<body>
<h1>Ver se senhas são iguais</h1>
<br>
<form action="" name="f1">
senha1: <input type="password" name="senha1" size="20" id="senha1">
<br>
senha2: <input type="password" name="senha2" size="20" id="senha2">
<br>
</form>
</body>
</html>você não esperou o DOM carregar, então tentou atrelar um evento em um elemento q ainda não existia.
leia:
http://wbruno.com.br/blog/2011/03/31/como-debugar-javascript-firefox-erros-comuns/
além disso, você deveria usar uma function anônima.
sem dizer q você não deve usar a forma form.campo.atributo
e sim o padrão document.getElementbyId()
fiz o que voce falou, e não sei se você reparou, mas eu não digitei nenhuma variável :joia:
fiz o que voce falou
??
>
, e não sei se você reparou, mas eu não digitei nenhuma variável :joia:
e quem falou de variavel ?
deu certo então ? conseguiu ?
tá que nem eu, funciona que é uma beleza !!
Isto não é possivel.