繁体   English   中英

jQuery从所有输入,textarea中删除类,并在特定div中选择元素

[英]jQuery remove class from all input, textarea and select elements inside a specific div

jQuery从所有输入,文本区域中删除该类,并选择特定div中的元素

如何使用jQuery从特定div中的所有输入,文本区域和选择元素中删除类。

我的HTML如下所示:

<h4 class="subHead02">Personal Statement
    <span class="action-container">
        <a href="javascript:;" class="edit-link"> 
            <i class="icon-edit"></i>
        </a>
    </span>
</h4>
<div class="profile_info_wrap">
    <input type="text" value="test" class="hide"/>
    <textarea class="hide" ros="3" cols="10">I am in text area</textarea>
    <select class="hide">
        <option>one</option>
        <option>two</option>
    </select>
    <input type="text" value="hello" class="hide"/>
</div>

当单击编辑链接(带有类=“ edit-link”的锚标签)时,我想从每个输入,文本区域中删除类“ hide”,并选择类为“ profile_info_wrap”的div中的元素。

尝试如下

jQuery(this).parent().parent().next(".profile_info_wrap").find("select,textarea, input").removeClass('hide');

但这是行不通的。 任何帮助将不胜感激

使用父级用法最接近

$(this).closest('.subHead02').next(".profile_info_wrap").find("select,textarea, input").removeClass('hide');

也是正确remoceClassremoveClass

同样,锚标记的OnClick动作只需添加e.preventDefault();

 $(function(){ $('.edit-link').click(function(e){ e.preventDefault(); $(this).closest('.subHead02').next(".profile_info_wrap").find("select,textarea, input").removeClass('hide'); }) }) 
 .hide { display: none; } 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <h4 class="subHead02">Personal Statement <span class="action-container"> <a href="#" class="edit-link"> <i class="icon-edit">hello</i> </a> </span> </h4> <div class="profile_info_wrap"> <input type="text" value="test" class="hide"/> <textarea class="hide" ros="3" cols="10">I am in text area</textarea> <select class="hide"> <option>one</option> <option>two</option> </select> <input type="text" value="hello" class="hide"/> </div> 

希望对您有所帮助。它可以在下面的代码段中运行。

您有错字错误removeClass()而不是remoceClass()

jQuery(this).closest('.subHead02').next(".profile_info_wrap").find("select,textarea, input").removeClass('hide');

尝试这个

 $('.edit-link').click(function(){
      $('.profile_info_wrap').find('.hide').each(function(){
           $(this).removeClass('hide');
      });
 });

嘿我正在通过电话发帖,所以可能会有一些错字。

谢谢

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM