首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >类在removeClass JQuery之后不会被移除。

类在removeClass JQuery之后不会被移除。
EN

Stack Overflow用户
提问于 2015-11-17 15:12:37
回答 3查看 71关注 0票数 0

嗨,我有一个文本框如下:

代码语言:javascript
复制
<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">

我希望删除选项卡键上的class=“输入-验证-错误”,其代码如下:

代码语言:javascript
复制
$(document).ready(function () {
            $("#AltPhone").live('keydown', function (e) {
                var code = e.keyCode || e.which;
                if (code == 9) {
                    $(this).removeClass('input-validation-error');
                    e.stopPropagation();
                }
            });
        });

但是,我仍然无法从文本box.Here中删除该类,调用函数并调用下面的代码行,但在调用函数完成后,该类仍然出现在文本框中。

代码语言:javascript
复制
$(this).removeClass('input-validation-error');
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-11-17 15:17:20

有一个适当的事件来管理输入选项卡,请使用blur

代码语言:javascript
复制
$("#AltPhone").on('blur', function (e) {
      //code here
});
票数 3
EN

Stack Overflow用户

发布于 2015-11-17 15:25:01

使用.keydown()事件代替。

代码语言:javascript
复制
$(document).ready(function () {
            $("#AltPhone").keydown(function (e) {
                var code = e.keyCode || e.which;
                if (code == 9) {
                    $(this).removeClass('input-validation-error');
                    e.stopPropagation();
                }
            });
        });

工作示例:https://jsfiddle.net/j2y9w1x6/

单击Tab键后,检查结果部分中的元素,以查看是否已删除验证类。

票数 0
EN

Stack Overflow用户

发布于 2015-11-17 15:31:49

也许是因为这个键拦截了你的浏览器。尝试另一个键,例如ENTER

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33760389

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档