当我调用此函数时,我收到此错误:
if (event.keyCode == 46 || event.keyCode == 8 || event.keyCode == 9 || event.keyCode == 27 || event.keyCode == 13 ||
ReferenceError: event is not defined
这是我的代码:
$(".decimalonly").each(function () {
$(this).keydown(function (e) {
if (event.keyCode == 46 || event.keyCode == 8 || event.keyCode == 9 || event.keyCode == 27 || event.keyCode == 13 ||
(event.keyCode == 65 && event.ctrlKey === true) ||
((event.keyCode == 190 || event.keyCode == 110) && $(this).val().indexOf(".") == -1) ||
(event.keyCode >= 35 && event.keyCode <= 39)) {
return;
}
else {
keypress
if (event.shiftKey || (event.keyCode < 48 || event.keyCode > 57) && (event.keyCode < 96 || event.keyCode > 105)) {
event.preventDefault();
}
}
});
});
答案 0 :(得分:0)
您正在传递e
作为参数,然后e
变量包含所有事件信息。所以用event
替换每个e
。我还注意到keypress
也应该导致错误,因为它没有在任何地方定义,它不是赋值或函数调用。
答案 1 :(得分:0)
您正在将e
传递给该函数,但在您正在调用event
的函数中。将$(this).keydown(function (e)
替换为$(this).keydown(function (event)
,您就可以了。