您好我有一个文本框如下:
['SOURCE: filename.dc : another/path : a/path/: description','...]
我想删除class =" input-validation-error"在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="150" name="AltPhone" tabindex="33" type="text"
value="" class="input-validation-error">
但是我仍然无法从文本框中删除该类。这个函数被调用,并且还调用了代码的以下行,但是在调用完成的函数之后,该类仍出现在文本框中。
$(document).ready(function () {
$("#AltPhone").live('keydown', function (e) {
var code = e.keyCode || e.which;
if (code == 9) {
$(this).removeClass('input-validation-error');
e.stopPropagation();
}
});
});
答案 0 :(得分:3)
有一个适当的事件来管理输入标签,使用blur
$("#AltPhone").on('blur', function (e) {
//code here
});
答案 1 :(得分:0)
改为使用.keydown()
事件。
$(document).ready(function () {
$("#AltPhone").keydown(function (e) {
var code = e.keyCode || e.which;
if (code == 9) {
$(this).removeClass('input-validation-error');
e.stopPropagation();
}
});
});
&#13;
工作示例:https://jsfiddle.net/j2y9w1x6/
单击Tab键后,检查“结果”部分中的元素以查看是否已删除验证类。
答案 2 :(得分:0)
也许是因为这个键拦截了你的浏览器。尝试使用其他密钥,例如ENTER
。