我怎样才能得到div文本?

时间:2016-12-24 10:13:07

标签: jquery twitter-bootstrap

我正在尝试用我的HTML和PHP(only loop)创建一个教室座位。这是我的剧本

        <?php for($x=1;$x<41;$x++){?>
                <div class="kolom col-md-3">
                    <div class="headerval"><center><?=$x;?></center></div>
                        <div class="left foo col-md-6">1</div>
                                <div class="right foo col-md-6">2</div>
                        </div> 
                    <?php } ?>  
                </div>  

这是结果

enter image description here

现在,我正在尝试提醒div .headerval内的文字。然后我添加这个JS

   $( function() {
        $(document).on("click", ".left", function() {
                 alert($( this ).closest('.headerval').text());
             });    
        $(document).on("click", ".right", function() {
                 alert($( this ).closest('.headerval').text());
             });
  } );

使用My JS我只能看到空警报。我已将closest更改为find,但没有任何帮助。

抱歉我的英文不好

1 个答案:

答案 0 :(得分:2)

实际上,.headerval是兄弟姐妹而不是.left的父母。

alert($(this).siblings('.headerval').text());

作为.siblings(的替代方案,您也可以使用.prev(

alert($(this).prev('.headerval').text());

对于你必须使用的.right

alert($(this).parent().prev('.headerval').text());

但通常您可以定位.right.left的父级,以简化您的代码。

 $( function() {
   $(document).on("click", ".left, .right", function() {
       alert($(this).closest('.kolom').find(".headerval").text());
   });    
 });