1

私はjQueryが初めてで、これに対する解決策を見つけることができませんでした。

私はこのHTMLを持っています:

<input type="text" id="Box1" /><br />
<input type="text" id="Box2" />

そしてjQuery:

$("#Box1").keydown(function () {
    $("#Box2").val("");
});
$("#Box2").keydown(function () {
    $("#Box1").val("");
});

例: http://jsfiddle.net/tv4my/

「Box1」と入力してから「Box2」と入力すると、Box1 の内容がクリアされます。これは良いことですが、Tab キーが押されたときにこの関数を実行したくありません。つまり、Box2 内で Tab キーを押したときに Box1 をクリアしたくありません。これをjQueryでどのように書くのですか?

4

2 に答える 2

1

e.preventDefault()そのキーをクリックするときに使用します。

$("input").keydown(function(e){
    if(e.keyCode == "9"){
        e.preventDefault();
    }
});

ここで JSFiddle を確認してください。

于 2012-05-14T04:31:59.303 に答える
1

イベントの開始に使用されるキーを確認する必要があります。

$("#Box1").keydown(function (e) {
    // If the pressed key is not tab (9) then reset Box2
    if(e.keyCode !== 9){
        $("#Box2").val("");
    }
});
$("#Box2").keydown(function (e) {
    // If the pressed key is not tab (9) then reset Box1
    if(e.keyCode !== 9){
        $("#Box1").val("");
    }
});
于 2012-05-14T04:40:12.037 に答える