为什么赢了';这个Javascript函数不能工作吗?
我有一个JavaScript函数,现在它不工作了,因为我在它下面放了一个新函数。这是我文件开头的内容为什么赢了';这个Javascript函数不能工作吗?,javascript,jquery,Javascript,Jquery,我有一个JavaScript函数,现在它不工作了,因为我在它下面放了一个新函数。这是我文件开头的内容 <head> <link rel="stylesheet" href="9j3nz/style.css" type="text/css"> <script src="jquery.js"></script> <script src="processing.js"></script> <script ty
<head>
<link rel="stylesheet" href="9j3nz/style.css" type="text/css">
<script src="jquery.js"></script>
<script src="processing.js"></script>
<script type="text/javascript">
function isNumberKey(evt)
{
var charCode = (evt.which) ? evt.which : event.keyCode
if (charCode > 31 && (charCode < 48 || charCode > 57))
return false;
return true;
}
</script>
<script type="text/javascript">
function stopRKey(evt) {
var evt = (evt) ? evt : ((event) ? event : null);
var node = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null);
if ((evt.keyCode == 13) && (node.type=="text"))
$("label#enter_error").show();
{return false;}
}
document.onkeypress = stopRKey;
</script>
</head>
是什么让它无法工作?自从我输入停止-回车键功能后,它才开始工作
编辑:
删除“停止输入”键功能后,isnumberkey事件再次工作。我认为它们在某种程度上相互干扰。如果使用jQuery,可以简化代码:
$(document).keydown(e) {
return e.keyCode == 31; // replace this with your logic
}
似乎你的stopRKey总是返回false,这可能会阻塞你的isNumberKey 试着重新安排你的父母
if ((evt.keyCode == 13) && (node.type=="text"))
$("label#enter_error").show();
{return false;}
应该是
if ((evt.keyCode == 13) && (node.type=="text")) {
$("label#enter_error").show();
return false;
}
更新:使用if语句有两种方法
如果只需一次操作,就可以调用:例如
if (true) alert('always true');
// or
if (true)
alert('always true');
或者,您可以使用代码块调用if
语句
if (true) {
alert('one alert');
alert('another alert');
}
由于您的参数出现故障,如果用户按enter键,然后继续处理剩余的代码,那么您的代码只会执行show()
。因此总是调用return false。这并不能解决问题,因为isnumberkey函数不起作用,但很好地了解了这一点。我现在正在学习jQuery。非常感谢。我不知道第一个函数是如何工作的。你不是在叫它:)我试着叫它,但效果很好。我是这样叫的:onkeypress=“returnisnumberkey(event)”有效。非常感谢你。你能解释一下这到底是怎么回事吗?我认为返回错误;是有条件的,我不明白它总是返回false的原因。更多的是关于if语句如何工作,请参阅我的更新
if (true) {
alert('one alert');
alert('another alert');
}