2012-07-02 51 views
6

Tôi gặp sự cố để lấy dữ liệu bảng trong hàng nếu nút được chọn. Tôi có hai nút chấp thuận và từ chối và dựa trên những gì người dùng nhấn nút tôi muốn lấy dữ liệu bằng cách sử dụng truy vấn. có thể lấy số hàng và nội dung không phải là dữ liệu hàng. Tôi cần lấy id và tester.lấy dữ liệu hàng bằng cách sử dụng jquery bằng cách nhấp vào các nút cho hàng đó

đây là những gì tôi có

<table id="mytable" width="100%"> 
<thead> 
<tr> 
<th>ID</th> 
<th>Tester</th> 
<th>Date</th> 
<th>Approve</th> 
<th>Deny</th> 
</tr> 
</thead> 
<tbody> 
<tr class="test"> 
<td class="ids">11565 </td> 
<td class="tester">james</td> 
<td>2012-07-02 </td> 
<td><Button id="Approved" type="submit" >Approved</button> 
</td> 
<td><Button id="deny_0" type="submit" >Denied</button> 
</td> 
</tr> 
</tbody> 
</table> 

đây là javascript của tôi để có được những tr và td số nhưng tôi không chắc chắn làm thế nào để sử dụng nó để có được những gì tôi cần

$(document).ready(function() { 

    /*$('#cardsData .giftcardaccount_id').each(function(){ 

     alert($(this).html()); 
    }); */ 
    $('td').click(function(){ 
      var col = $(this).parent().children().index($(this)); 
      var row = $(this).parent().parent().children().index($(this).parent()); 
      alert('Row: ' + row + ', Column: ' + col); 
     // alert($tds.eq(0).text()); 
      console.log($("tr:eq(1)")); 
     // $("td:eq(0)", this).text(), 

     }); 


}); 

Trả lời

7
$(document).ready(function(){ 
    $('#Approved').click(function(){ 
     var id = $(this).parent().siblings('.ids').text(); 
     var tester = $(this).parent().siblings('.tester').text(); 

     console.log(id); 
     console.log(tester); 
    }); 
});​ 

JSFiddle

2

Tôi sẽ sử dụng closest() để nhận số tr và n xuống từ đó.

var tr = $('td').closest('tr') 

Ngoài ra tôi nghĩ rằng đây là không cần thiết, trong ví dụ của bạn đó sẽ là $(this):

$(this).parent().children().index($(this)) // === $(this) 
1
$('table').on('click', 'button', function() { 
     var parentRow = $(this).parent().parent(); 
     var id = $('td.ids', parentRow).text(); 
     var tester = $('td.tester', parentRow).text(); 

    alert('id: ' + id + ', tester: ' + tester); 
});​ 
5
$(function(){ 
    $('button').on('click', function(){ 
     var tr = $(this).closest('tr'); 
     var id = tr.find('.ids').text(); 
     var tester = tr.find('.tester').text(); 
     alert('id: '+id+', tester: ' + tester); 
    }); 
});​ 

FIDDLE

Các vấn đề liên quan