2

私はこのコードを持っています:

<html>
    <title>a</title>
    <head>
        <script type="text/javascript" src="jquery-1.8.0.js"></script>
        <script type="text/javascript">
            $("#target").keypress(function(event) {
                if ( event.which == 13 ) {
                    alert("Enter has been clicked.");
                }
            }
        </script>
    </head>
<body>
    <input type="text" id="target"></input>
</body>
</html>

入力ボックス内でEnterをクリックすると、メッセージボックスが表示されるようにします。

ありがとう。

4

3 に答える 3

2
  // DOM ready handler
$(function() {
    $("#target").keypress(function(event) {
        if ( event.which == 13 ) {
            alert("Enter has been clicked.");
        }
    }); // missing ")"
});

また、上部のDoctypeを覚えておいてください。

<!DOCTYPE html>

終了入力タグを削除します。

<input type="text" id="target">

@Davidが指摘したように、同等性の比較に==vsを使用すると、異なる結果が生じる可能性があります。===この場合、違いはありませんが、安全のために、一般的にを使用し、必要な特定のタイプの強制がある場合に===使用することをお勧めします。==

于 2012-09-03T19:55:56.513 に答える
1

<input>要素が存在する前にコードが実行されています。domreadyイベントを使用できます。

<script type="text/javascript">
$(function(){
  $("#target").keypress(function(event) {
    if ( event.which == 13 ) {
      alert("Enter has been clicked.");
    }
  });
});
</script>

または、そのスクリプトタグをファイルの後半、おそらく終了タグの直前に配置します</body>

于 2012-09-03T19:55:35.103 に答える
0

参照: http://jsfiddle.net/M8y5J/

JavaScript

$(function(){
    $("#target").on("keypress", function(e){   
        if ( e.which === 13 ) {
            alert("Enter has been clicked.");
        }
    });
});

完全な HTML

<!DOCTYPE html>
<html>
    <head>
        <title>Demo</title>
        <script type='text/javascript' src='http://code.jquery.com/jquery-1.8.0.js'></script>
        <script type="text/javascript">
            $(function () {
                $("#target").on("keypress", function (e) {
                    if (e.which === 13) {
                        alert("Enter has been clicked.");
                    }
                });
            });
        </script>
    </head>
    <body>
        <input type="text" id="target" />
    </body>
</html>
于 2012-09-03T20:00:17.627 に答える