我有一个textbox,它使用了手机和onblur的屏蔽插件,我正在删除一个特定的类。然而,在tab键上,从另一个字段,它再次变成红色。代码如下:
<input data-val="true" data-val-regex="Alt. Phone is not correct" data-val-regex-pattern="(1-?)?(\([2-9]\d{2}\)|[2-9]\d{2})-?[2-9]\d{2}-?\d{4}" id="AltPhone" maxlength="14" name="AltPhone" tabindex="6" type="text" value="" class="">
$("#AltPhone").blur(function () {
$(this).removeClass('input-validation-error');
$("label[for='AltPhone']").removeClass('input-validation-error');
});
$("#AltPhone").focus(function () {
$("label[for='AltPhone']").removeClass('input-validation-error');
$(this).removeClass('input-validation-error');
});
blur
函数可以正常工作,但focus
并非如此。
发布于 2015-11-23 18:42:16
请检查此代码将为您工作,并让我知道。
$("#AltPhone").focusout(function () {
$("label[for='AltPhone']").removeClass('input-validation-error');
$(this).removeClass('input-validation-error');
});
发布于 2015-11-23 19:21:05
正如你在控制台中看到的,它工作得很好。不知道,但这可能是因为你的plugin.If可能,请发布一些代码。
$("#AltPhone").blur(function () {
$(this).removeClass('input-validation-error');
$("label[for='AltPhone']").removeClass('input-validation-error');
console.log("blur");
});
$("#AltPhone").focus(function () {
$("label[for='AltPhone']").removeClass('input-validation-error');
$(this).removeClass('input-validation-error');
console.log("focus");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
<input data-val="true" data-val-regex="Alt. Phone is not correct" data-val-regex-pattern="(1-?)?(\([2-9]\d{2}\)|[2-9]\d{2})-?[2-9]\d{2}-?\d{4}" id="AltPhone" maxlength="14" name="AltPhone" tabindex="6" type="text" value="" class="">
https://stackoverflow.com/questions/33868880
复制相似问题