我编写了代码,以防止输入框在任何textbox中的值相同时失去焦点。在chrome中,它工作正常,但在Firefox中,它失去了焦点并转到下一个输入框。
这是我的代码,请提出建议
$('.clsBarcode').bind("focusout", function (e) {
var repeat = 0;
if ($(this).val() != '') {
var c = $(this).val();
$('.clsBarcode').each(function () {
if ($(this).val() == c)
repeat++;
});
if (repeat <= 1) {
saveflag = false;
return;
}
else {
alert("Barcode value exist,Please select different Barcode");
$(this).css('border', '2px solid red');
$(this).focus();
e.preventDefault();
}
}
else {
$(this).css('border', '');
}
});
最佳答案
请从jsfiddle链接jsfiddle找到解决方案。这将在Internet Explorer和firefox中工作。
如下所示更改了您的脚本
$('.clsBarcode').each(function () {
if ($(this).val() == c)https://jsfiddle.net/fb3Lq9qq/28/#run
repeat++;
});
if (repeat <= 1)
{
saveflag = false;
return;
}
else {
alert("Barcode value exist,Please select different Barcode");
$(this).css('border', '2px solid red');
var textgroupid= $(this).attr("id");
setTimeout(function()
{
$("#"+ textgroupid +"").focus();
},10);
}
}
else {
$(this).css('border', '');
//$('#BtnBarcodesave').prop('disabled', false);
}
});
});
关于javascript - 焦点只在Firefox中转到下一个文本框,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35789396/