如果按下“enter”键,jQuery触发事件

时间:2015-08-18 12:51:47

标签: javascript php

我想在按下“enter”键时触发事件。我使用下面的代码,但它不工作,我不知道为什么。我到处搜索,我发现了这段代码。

<html>    
    <head>
        <script src="jquery.js"></script>
        <script src="jquery2.js"></script>

        $('#mess').keypress(function(e){
            var key= e.which;
            if( key == 13){
                $('#anc').click();
                return false;
            }

    </head>
    <body>
        <form>
            <a href="#" id="anc" onclick="start()" > Send</a>
            <input id="mess" style="width:200px" type="text" name="msg"/>
        </form>
    </body>
</html>

1 个答案:

答案 0 :(得分:6)

您需要将代码包装在<script></script>标记周围,以便浏览器读取脚本。您是为外部JavaScript文件执行此操作,但是您没有为内联代码执行此操作。

<script>
$('#mess').keypress(function(e){
    var key= e.which;
    if( key == 13){
        $('#anc').click();
        return false;
    }
 });
</script>

修改1

请检查控制台是否有任何错误,可能是您的DOM尚未加载,而您正在尝试操作它,因此可能会导致错误。

修改2

您的代码目前不正确。

$('#mess').keypress(function(e) {
  var key = e.which;
  if (key == 13) {
      $('#anc').click();
      return false;
  }
 });

您错过了keypress函数的结束部分。

编辑3

如果没有完整的控制台信息,我可以猜测。所以我假设您的DOM尚未加载。因此,请使用以下事件侦听器包装代码。

document.addEventListener("DOMContentLoaded", function() {
    // Your code here.
}, false);

您的代码将在DOM加载后运行。

相关问题