专注于每个功能 jQuery

focus oneach function jQuery

由于使用 jQuery 框架时遇到性能问题,我正在尝试使用每个函数。 我总共有 8 个文本字段,其中 4 个属于 Type1,其余 4 个属于 Type2,每个 Type1 Type2 都有一对,因此它们可以相互替代。现在我的目标是使用 jQuery 进行验证,例如如果从一对夫妇中选择了 Type1,则 Type2 的值将为空白,反之亦然。

我的文本字段有名称:

Type1-1
Type1-2

Type2-1
Type2-2

Type3-1
Type3-2

Type4-1
Type4-2

我的代码:

for (var i = 1; i <= 4; i++) {

                    $("#Type1-" + i).on('click focusin', function () {
                        console.log("A",this.id);
                        $("#Type2-" + i).val('');
                         $( this).unbind( "focusin" );
                    });

                    $("#Type2-" + i).on('click focusin', function () {
                        console.log("B",this.id);
                        $("#Type1-" + i).val('');
                         $( this).unbind( "focusin" );
                    });

                    $("#Type1-" + i).keypress(function (e) {
                        if (e.which != 8 && e.which != 0 && (e.which < 48 || e.which > 57)) {
                            return false;
                        }
                    });
                    $("#Type2-" + i).keypress(function (e) {
                        if (e.which != 8 && e.which != 0 && (e.which < 48 || e.which > 57)) {
                            return false;
                        }
                    });
                };

如果我没理解错的话,当一个文本框被点击时,你只是想清除所有相同类型的文本框,对吧?

如果是这样,像这样的东西就足够了:

$(function(){
  $('input').on('focus',function(){
    $("." + this.className).val('');
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input class="t1"/><br/>
<input class="t1"/><br/>
<br/>
<input class="t2"/><br/>
<input class="t2"/><br/>
<input class="t2"/><br/>
<br/>
<input class="t3"/><br/>
<input class="t3"/><br/>
<input class="t3"/><br/>
<input class="t3"/><br/>