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 回答