blob: bb5a16e61b39474b1be23e456fc97c99a8433b16 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
---
title: GlobalEventHandlers.onkeypress
slug: Web/API/GlobalEventHandlers/onkeypress
translation_of: Web/API/GlobalEventHandlers/onkeypress
---
<div>{{ApiRef("HTML DOM")}}</div>
<h2 id="Описание">Описание</h2>
<p>Свойство<strong> onkeypress</strong> задаёт и возвращает код обработчика событий onKeyPress для текущего элемента.</p>
<h2 id="Синтаксис">Синтаксис</h2>
<pre class="syntaxbox">element.onkeypress = <em>код обработчика событий</em>
</pre>
<h2 id="Примечания">Примечания</h2>
<p>Событие нажатия <strong>должно</strong> вызываться тогда, когда пользователь нажимает клавишу на клавиатуре. Тем не менее, не все браузеры отрабатывают это событие для некоторых (определённых) клавиш.</p>
<h3 id="Несовместимость_в_браузерах">Несовместимость в браузерах</h3>
<p>Браузеры на основе Webkit (к примеру, Google Chrome и Safari) не отрабатывают события нажатия клавиш-указателей ("стрелок").</p>
<p>Firefox не отрабатывает события, в основе которых лежат клавиши управления (модификаторы) - такие, как, например, SHIFT.</p>
<h2 id="Спецификация">Спецификация</h2>
<p>Не является частью спецификации.</p>
<h2 id="Пример">Пример</h2>
<p>Следующий пример демонстрирует использование события <code>onkeypress</code> в процессе заполнения поля формы (только) цифрами:</p>
<pre class="brush: html"><!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Пример</title>
<script>
function numbersOnly(oToCheckField, oKeyEvent) {
return oKeyEvent.char === 0 || /\d/.test(String.fromCharCode(oKeyEvent.char));
}
</script>
</head>
<body>
<form name="myForm">
<p>Вводите только цифры: <input type="text" name="myInput" onkeypress="return numbersOnly(this, event);" onpaste="return false;" /></p>
</form>
</body>
</html>
</pre>
|