首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果输入字段已填充,则删除父类

如果输入字段已填充,则删除父类
EN

Stack Overflow用户
提问于 2018-03-29 08:11:46
回答 4查看 1.2K关注 0票数 1

我有个问题。如何检查输入字段中是否填充了文本并删除其中的div类?

我已经试过了,但没有用.

代码语言:javascript
复制
 $('.form-control-login input').blur(function(){
    if( !$(this).val() ) 
          $(this).parent().removeClass('is-empty');
    
});
代码语言:javascript
复制
.is-empty {
  color:red;   
}
代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="form-group label-floating is-empty">
 <label class="control-label">Your Email</label>
 <input class="form-control-login" name="login" autocomplete="username">
 </div>

https://jsfiddle.net/Gamernamer/wwd8x63p/2/

非常感谢您的帮助!

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2018-03-29 08:17:06

首先,你的选择是错误的。.form-control-login元素是input,所以您不需要这样做。

要解决这个问题,请使用input事件而不是blur,以便类将被更新为用户类型。然后,可以使用toggleClass()在一行中的父元素上设置类,如下所示:

代码语言:javascript
复制
$('.form-control-login').on('input', function() {
  $(this).parent().toggleClass('is-empty', this.value.trim().length == 0);
});
代码语言:javascript
复制
.is-empty {
  color: red;
}
代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="form-group label-floating is-empty">
  <label class="control-label">Your Email</label>
  <input class="form-control-login" name="login" autocomplete="username">
</div>

票数 4
EN

Stack Overflow用户

发布于 2018-03-29 08:16:18

代码语言:javascript
复制
 $(document).ready(function() {
   $('.form-control-login').blur(function() {
     if ($(this).val())
       $(this).parent().removeClass('is-empty');

   });
 })

您应该检查($(this).val())是否为空,然后删除类,而不是以相反的方式。

票数 0
EN

Stack Overflow用户

发布于 2018-03-29 08:19:13

我希望这能达到你的要求

  • 给$(‘.表单-控制-登录’)而不是$(‘.表单-控制-登录输入
  • 使用if( $(this).val() )而不是if( !$(this).val() )

代码语言:javascript
复制
$('.form-control-login').blur(function(){
    console.log("dd");
    if( $(this).val() ) 
          $(this).parent().removeClass('is-empty');
    
});
代码语言:javascript
复制
.is-empty {
  color:red;   
}
代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="form-group label-floating is-empty">
 <label class="control-label">Your Email</label>
 <input class="form-control-login" name="login" autocomplete="username">
 </div>

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

https://stackoverflow.com/questions/49551045

复制
相关文章

相似问题

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