O evento que eu preciso para suprimir parar o IE de “Dinging” quando eu pressione enter em uma caixa de texto?
-
11-09-2019 - |
Pergunta
Em formas simples com uma caixa de texto enter envia o formulário (e isso é ótimo para formulários de pesquisa fáceis)
No entanto, em um formulário com múltiplas campos, pressionando ENTER em uma entrada = box "texto" não vai fazer nada (por exemplo, enviar), mas no IE-lo "Dings" como se você tentou excluir um objeto undeletable.
A questão é ... o evento que eu preciso suprimir no IE para parar este som? por exemplo. se eu tiver uma forma nome de usuário / senha, quero a tecla Enter para enviar o formulário, mas eu certamente não quer que o som "erro".
local Exemplo com o som: http://www.sears.com/shc/s/StoreLocatorView?storeId = 10153 & catalogId = 12605 Apenas pressione Enter em qualquer um dos campos de texto. Ding Ding !, !, Ding!
Os usuários não-IE, o som é o: Programa de Eventos> Windows> Padrão Beep ( "Windows XP Ding.wav")
Solução
Bem, parece que isso funciona:
<!-- suppress sound (and suppress submit) -->
<input type="text" onkeypress="if(window.event.keyCode == 13){return false;}"/>
<!-- suppress sound (BUT allow submit) -->
<input type="text" onkeypress="if(window.event.keyCode == 13){this.form.submit();return false;}"/>
Outras dicas
$("#logonForm").keypress(function (e) {
if (e.keyCode == '13') {
if (instance.Validate(instance)) {
document.forms["logonForm"].submit();
return false; //Do not delete, suppresses ding in IE... :P
}
}
});
Isso funciona, podemos usá-lo.
Ele está certo. O campo de texto que você quer, para não perturbá-lo com ding canção
só adicionar
onkeypress="if(window.event.keyCode == 13){return false;}"
para você marca de entrada
<input type="whatever" onkeypress="if(window.event.keyCode == 13){return false;}" >
Mas não faça isso em enviar ou entrada botão OK. Apenas para os campos de texto, para que você não ficar irritado por ding! ding! agora. Eu verifiquei.
$("#txtSomething").keypress(function (e) {
if (e.which == 13) {
e.Handled = true; //This will prevent the "ding" sound
//Write the rest of your code
}
});
Eu acho que é controlado pelo OS & portanto, ele não pode ser controlado usando javascript.