event ejemplo javascript javascript-events textbox keypress onkeypress

event - onkeypress javascript ejemplo



Cómo capturar presionar la tecla presionar? (12)

Deprecated según MDN

Esta característica ha sido eliminada de los estándares web. Aunque algunos navegadores aún pueden soportarlo, está en proceso de descarte. Evite usarlo y actualice el código existente si es posible; vea la tabla de compatibilidad en la parte inferior de esta página para guiar su decisión. Tenga en cuenta que esta característica puede dejar de funcionar en cualquier momento.

Sin embargo, si realmente quieres usar esto y necesitas un valor, ve a http://keycode.info/

En mi página HTML, tenía un cuadro de texto para que el usuario ingresara la palabra clave para buscar. Cuando hacen clic en el botón de búsqueda, la función de JavaScript generará una URL y se ejecutará en una nueva ventana.

La función de JavaScript funciona correctamente cuando el usuario hace clic en el botón de búsqueda con el mouse, pero no hay respuesta cuando el usuario presiona la tecla ENTRAR.

function searching() { var keywordsStr = document.getElementById(''keywords'').value; var cmd ="http://XXX/advancedsearch_result.asp?language=ENG&+"+ encodeURI(keywordsStr) + "&x=11&y=4"; window.location = cmd; } <form name="form1" method="get"> <input name="keywords" type="text" id="keywords" size="50" > <input type="submit" name="btn_search" id="btn_search" value="Search" onClick="javascript:searching(); return false;" onKeyPress="javascript:searching(); return false;"> <input type="reset" name="btn_reset" id="btn_reset" value="Reset"> </form>


Enfoque de formulario

Como dice scoota269, debes usar " onSubmit en onSubmit lugar, ya que presionar "Enter" en un cuadro de texto disparará un formulario (si está dentro de un formulario).

<form action="#" onsubmit="handle"> <input type="text" name="txt" /> </form> <script> function handle(e){ e.preventDefault(); // Otherwise the form will be submitted alert("FORM WAS SUBMITTED"); } </script>

Enfoque de cuadro de texto

Si desea tener un evento en el campo de entrada, entonces necesita asegurarse de que handle() devuelva false, de lo contrario el formulario será enviado.

<form action="#"> <input type="text" name="txt" onkeypress="handle(event)" /> </form> <script> function handle(e){ if(e.keyCode === 13){ e.preventDefault(); // Ensure it is only this code that rusn alert("Enter was pressed was presses"); } } </script>


Necesita crear un controlador para la acción onkeypress .

HTML

<input name="keywords" type="text" id="keywords" size="50" onkeypress="handleEnter(this, event)" />

JS

function handleEnter(inField, e) { var charCode; //Get key code (support for all browsers) if(e && e.which) { charCode = e.which; } else if(window.event) { e = window.event; charCode = e.keyCode; } if(charCode == 13) { //Call your submit function } }


Prueba esto....

HTML en línea

onKeydown="Javascript: if (event.keyCode==13) fnsearch();" or onkeypress="Javascript: if (event.keyCode==13) fnsearch();"

JavaScript

<script> function fnsearch() { alert(''you press enter''); } </script>


Puedes usar javascript

ctl.attachEvent(''onkeydown'', function(event) { try { if (event.keyCode == 13) { FieldValueChanged(ctl.id, ctl.value); } false; } catch (e) { }; return true })


Tan fácil como lamer un helado, supongamos:

tu página antes:

<body>

tu página ahora:

<body onkeypress=if(event.keyCode==13)alert(''hi'')>

Este es un ejemplo tan simple como es; Supongo que tiene su página con una etiqueta de cuerpo simple y si inserta esta función onkeypress que funciona sola, eso significa que cada vez que presione la tecla ENTER la alerta aparecerá [use algo después de .keyCode == 13)]

Reemplace su etiqueta BODY con esta y presione ENTER para probar, la verá funcionando


Un poco de jQuery genérico para ti ...

$(''div.search-box input[type=text]'').on(''keydown'', function (e) { if (e.which == 13) { $(this).parent().find(''input[type=submit]'').trigger(''click''); return false; } });

Esto funciona suponiendo que el cuadro de texto y el botón de envío están incluidos en el mismo div. funciona como un regalo con múltiples cuadros de búsqueda en una página


Use un atributo onsubmit en la etiqueta del formulario en lugar de hacer clic en el envío.



use onkeypress ... compruebe si la tecla presionada es enter (keyCode = 13) si es que llama a la función de searching() .

HTML

<input name="keywords" type="text" id="keywords" size="50" onkeypress="handleKeyPress(event)">

JAVASCRIPT

function handleKeyPress(e){ var key=e.keyCode || e.which; if (key==13){ searching(); } }

actualización: corrige el error tipográfico en el código que probablemente causó quejas anteriores sobre su trabajo.


// jquery press check by Abdelhamed Mohamed $(document).ready(function(){ $("textarea").keydown(function(event){ if (event.keyCode == 13) { // do something here alert("You Pres Enter"); } }); });

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> <textarea></textarea>


<form action="#"> <input type="text" id="txtBox" name="txt" onkeypress="handle" /> </form> <script> $("#txtBox").keypress(function (e) { if (e.keyCode === 13) { alert("Enter was pressed was presses"); } return false; }); </script>