2016-07-26 37 views
-1

选择TD的第一个孩子是没有得到

$(function() { 
 
      $("tr").click(function() { 
 

 
       $(this).addClass("selected"); 
 
      }); 
 

 
      //************** for left working***************// 
 
      $("button").click(function() { 
 

 
       var CurrentTrId = $("tr.selected").attr("data-id"); 
 

 
       var ParrentTrId = (CurrentTrId) - 1; 
 

 
       if (ParrentTrId == 0) { 
 
        return 
 
       } 
 

 
       var CurrentTrLeftValue = parseInt($(".selected > td:first-child ").css("padding-left")); 
 
       console.log(CurrentTrLeftValue); 
 
       var ParrentTrLeftValue = parseInt($("tr[data-id='" + parrentid + "']td:first-child").css("padding-left")); 
 
       if (NewCurrentTrLeftValue == ParrentTrLeftValue) { 
 

 
        if (CurrentTrLeftValue <= 40) { 
 

 
         CurrentTrLeftValue = (CurrentTrLeftValue + 20); 
 

 

 
         $(".selected > td:first-child").css({ "padding-left": CurrentTrLeftValue }); 
 
         $(".selected > td:first-child").addClass("normal"); 
 
         $('#', ParrentTrId).addClass('bold'); 
 
        } 
 
       }  }); 
 

 
     })
.table { 
 
    position:static; 
 
     width:100%; 
 
     border-collapse:collapse; 
 
     
 
     
 
} 
 
      .table td { 
 
       border: 1px solid; 
 
       border-color: lightgray; 
 
       
 
       height: 17px; 
 
      } 
 
      .selected{ 
 
       background-color:lightskyblue; 
 
      }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<table class="table"> 
 
     <tr> 
 
     <td>hi</td> <td>hi</td> 
 
     </tr> 
 
     <tr> 
 
      <td>me</td> <td>me</td> 
 
     </tr> 
 
     <tr> 
 
      <td>you</td> <td>you</td> 
 
     </tr> 
 
    </table> 
 
    <button>clickme</button>

我想选择TD没有采取有没有任何方法呢? “parrentid是一个变量,存储parrent data-id”

我有一张表和一个按钮,我想将第三次点击按钮时将我的可选tr内容移动到20 px左侧。第二次点击我想再次移动它20px(总计40px)。我在这里写一些代码

+0

您可以重现stacksnippet中的问题...? –

+0

嗨,我在这里添加完整的代码 –

回答

1

使用:first-child选择第一个孩子

var LeftValue = $("tr[data-id='1'] td:first-child").text(); 
alert(LeftValue) 

JSFIDDLE

1

确保这个选择将数据返回

$("tr[data-id='" + parrentid + "'] > td:first-child"); 

如果没有,那么使用这个

$("tr[data-id='" + parrentid + "'] td:first-child"); 

然后确保

parseInt($("tr[data-id='" + parrentid + "'] > td:first-child").css("padding-left"));犯规返回字符串如“123px '

-1

通常错误:“未捕获的ReferenceError:$没有定义”时,jQuery库还没有被包含在HTML页面出现。 您可以使用下面的代码来包含jquery文件,然后尝试:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script> 
相关问题