专注于每个功能 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/>
由于使用 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/>