.NET Enviar Fires Antes Javascript OnKeyPress

votos
0

Eu estou tentando usar onkeypress em um input type = controle texto para disparar alguns javascript se o botão Enter é pressionado. Ele funciona na maioria das páginas, mas também tenho algumas páginas com controles personalizados .NET.

O problema é que o .NET enviar incêndios antes do onkeypress. Alguém tem uma visão sobre como fazer fogo onkeypress em primeiro lugar?

Se ele ajuda, aqui é o meu javascript:

 function SearchSiteSubmit(myfield, e)
{
    var keycode;
    if (window.event)
        keycode = window.event.keyCode;
    else if (e)
        keycode = e.which;
    else 
        return true;
    if (keycode == 13)
    {
        SearchSite();
        return false;
    }
    else 
        return true;
}
Publicado 09/12/2008 em 17:26
fonte usuário
Em outras línguas...                            


3 respostas

votos
0

Como você está atribuindo o javascript?

Ele deve ser parecido:

<input id="TextID" type="text" onkeypress="return SearchSiteSubmit('TextID', event)" />
Respondeu 09/12/2008 em 18:14
fonte usuário

votos
0

Esta não é uma pergunta muito clara, então eu vou dar-lhe um tiro -

Parece que você está procurando uma tecla de "enter" aqui. O problema parece ser que a tecla "enter" é geralmente ligado ao botão enviar em um formulário automaticamente pelo navegador, o que significa que quando o usuário pressiona entrar, você enviar o formulário, em vez de correr o javascript você tem aqui. O que você deve fazer é fazer um manipulador de eventos global que verifica se "MyField" tem o foco quando a tecla enter é pressionado, e se assim for, então o fogo javascript, em vez de enviar o formulário. Espero que eu entendi a sua pergunta!

Respondeu 09/12/2008 em 17:39
fonte usuário

votos
0

Javascript OnKeyPressdispara sempre em primeiro lugar, é mais um caso de tempo ou não concluiu a operação antes que a página é enviada de volta ..

Eu diria que repensar o que está acontecendo e onde .. O que está ocorrendo no lado do servidor?

Respondeu 09/12/2008 em 17:31
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more