【问题标题】:jquery next(), find() not workingjquery next(), find() 不工作
【发布时间】:2016-04-28 15:43:14
【问题描述】:

我有一个简单的 html 元素。我想在这个视图中实现 slideToggle。我认为它很简单,但我无法弄清楚确切的代码。单击“选择房间”按钮时,我想向下滑动 display_room 类。我不能使用 ID,因为它在循环中。所以,使用类我需要找到解决方案。

这是我的 html 代码。

<div class="panel-body pn_bdy" id="hotel-container">
    <div class="col-md-2" style="padding-left: 8px;">

    </div>
    <div class="col-md-6" style="padding-left: 0px;">
        <div class="hotel_name">
            <a href="#"><span style="color: #0896ff">

            </span></a>
            <p class="side_detail"><span style="font-size: 11px; color: #999999">  </span></p>


            <a style="cursor: pointer;" class="show_map" map="map{{$i}}{{$rand}}" lat="" lng=""><p style="margin-top: 8px; color: #337AB7"><b>view on map</b></p></a>
            <div class="map" id="map{{$i}}{{$rand}}"></div>

        </div>
    </div>
    <div class="col-md-2" style="padding-left: 0px;">
        <div class="rating">

        </div>
    </div>
    <div class="col-md-2 slc_rm">
        <p><span style="font-size: 16px; "></span></p>
        <div class="select_room" id="sl_button">
            <span class="btn btn-primary">Select Room</span>
        </div>
    </div>
</div>
<div class="wrapper-dropdown-menu" id="displayfilterr">
    <div class="display_room">
        Rooms
    </div>
</div>

这是我的 jquery,我试过了。 第一次尝试:

<script>
    $(document).ready(function(){
        $(".select_room").click(function(){
            $(this).parents('.slc_rm').parents('.pn_bdy').next().find('.display_room').slideToggle();
        });
    });

第二,我试过了:

<script>
    $(document).ready(function(){
        $(".select_room").click(function(){

            $(this).parent().parent().next().find(".display_room").slideToggle();
        });
    });
</script>

【问题讨论】:

  • 你到底想要什么??
  • 我想在点击选择房间按钮时向下滑动 display_room 类

标签: jquery find next


【解决方案1】:

试试这个parents('.pn_bdy:first')给大多数父母panel-body.next()给下一个div然后find(".display_room")

 $(".select_room").click(function(){
            $(this).parents('.pn_bdy:first').next().find(".display_room").slideToggle();
    });

$(document).ready(function(){
        $(".select_room").click(function(){
            $(this).parents('.pn_bdy:first').next().find(".display_room").slideToggle();
        });
    });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="panel-body pn_bdy" id="hotel-container">
    <div class="col-md-2" style="padding-left: 8px;">

    </div>
    <div class="col-md-6" style="padding-left: 0px;">
        <div class="hotel_name">
            <a href="#"><span style="color: #0896ff">

            </span></a>
            <p class="side_detail"><span style="font-size: 11px; color: #999999">  </span></p>


            <a style="cursor: pointer;" class="show_map" map="map{{$i}}{{$rand}}" lat="" lng=""><p style="margin-top: 8px; color: #337AB7"><b>view on map</b></p></a>
            <div class="map" id="map{{$i}}{{$rand}}"></div>

        </div>
    </div>
    <div class="col-md-2" style="padding-left: 0px;">
        <div class="rating">

        </div>
    </div>
    <div class="col-md-2 slc_rm">
        <p><span style="font-size: 16px; "></span></p>
        <div class="select_room" id="sl_button">
            <span class="btn btn-primary">Select Room</span>
        </div>
    </div>  
</div>
<div class="wrapper-dropdown-menu" id="displayfilterr">
    <div class="display_room">
        Rooms
    </div>
</div>

【讨论】:

  • 我想在面板@Parth Trivedi 之外显示切换。
  • 那就直接做$("#displayfilterr .display_room")..slideToggle();
  • 我不能使用 id,我有很多循环。 ID 仅适用于第一个循环。我必须使用类
  • 请检查我更新的答案。这就是你想要的。
  • 我可以看到它在这里工作,我不知道我的项目出了什么问题。它仍然无法正常工作:(
【解决方案2】:

删除 next() 方法 根据您的评论slide down the display_room class when clicked on select Room button

<script>
    $(document).ready(function(){
        $(".select_room").click(function(){

            $("#display_room").find(".display_room").slideToggle();
        });
    });
</script>

【讨论】:

    猜你喜欢
    • 2012-08-07
    • 2014-12-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-14
    相关资源
    最近更新 更多