Пожалуйста, помогите кому-нибудь очень отчаянному и утомленному новичку. Я везде искал ответ, но безрезультатно.
Я хочу захватить keyCode / charCode, чтобы проверить, была ли нажата клавиша ввода (я использовал keydown, но я не суетюсь, пока что-то работает) Я испробовал все мыслимые решения, и они отлично работают в IE, Safari, Chrome и Opera, но НЕ В FireFox 3.6.25 (последняя версия) ?! Я знаю, что событие определенно инициируется, поскольку я могу отобразить простое окно оповещения из вызываемой функции, но что касается объявления переменной, содержащей содержимое event.keyCode, то это совсем другой вопрос!
Код моей формы в основном ...
<form method="post" name="giftaidform" onsubmit="javascript:return validateForm();" action="../scripts/form-to-email.php">
<table width="500" border="0" align="center" cellpadding="5" cellspacing="0">
<tr>
<td width="180" align="right">Forename:</td>
<td align="left"><input name="forename" type="text" size="30" maxlength="30" onfocus="javascript:setUnchecked(this);" onkeydown="javascript:testForEnter(this);" onblur="javascript:isValidName(this);"></td>
</tr>
и так далее ...
Что касается моей функции "testForEnter" ...
function testForEnter(obj) {
// store code of key that was pressed
var keyCode = obj.keyCode;
alert(keyCode);
// if the enter key was pressed then prevent default action
if (keyCode == 13) {
if(event.preventDefault) event.preventDefault();
event.returnValue = false;
}
}
Я пробовал различные другие формулировки, включая obj.charCode и тому подобное, как показано ниже?!
function checkKey(evt) {
var keyID = (window.event) ? window.event.keyCode : event.which;
alert(keyID);
}
Ничего не работает в FireFox!