0
$('input[type="text"]').keyup(function(e){

     if(e.which === 13){
         //if enter is pressed
         //ignore the rest of the code below
     }

     doStuff();
});

在某些条件下(例如按下回车键时)跳过其余代码的正确语法是什么。我知道我只会将它包装在 if 语句中,但我想知道是否有类似于return false;.

但是,我知道 return false 会同时执行e.stopPropagation()and e.preventDefault(),在这种情况下,这显然不是我真正想要的。也许返回一个布尔值?

4

1 回答 1

3

只需一个return语句也可以做到这一点。return将导致函数立即退出,之后的任何代码都不会执行。

$('input[type="text"]').keyup(function(e){

     if(e.which === 13){
         //if enter is pressed
         //ignore the rest of the code below
         return;
     }

     doStuff();
});

编辑 :

TJCrowder 已将这些宝贵的信息放在评论中。所以只要把它放在这里,我同意它。

知道在 JavaScript 中根本不使用return语句的函数(因此,只是通过到达其代码末尾“返回”)、return;不带参数的使用和使用return undefined;. 在所有三种情况下,调用函数的代码都将 undefined 视为调用的结果。

于 2013-03-11T18:15:48.567 回答