2016-10-24 13 views
5

Tôi đang cố gắng để có được giá trị td của tr .. nhưng tiếc là nó không làm việc .. có thể có cái gì đó saiNhận td thứ hai của tr sử dụng jquery

html của tôi trông giống như

<tr class="dname"> 
    <td>abc</td> 
     <td>value here</td> 
</tr> 

Mã jquery của tôi là

jQuery(".dname").find("tr td:eq(1)").val(); 

Có gì sai?

Trả lời

7

Phương thức jQuery find() trả về hậu duệ của phần tử đã chọn. Bạn đã chọn số <tr> với một lớp là dname và sau đó cố gắng tìm một hậu duệ cũng là một số <tr>.

https://api.jquery.com/find/

Sau đây nên làm việc:

jQuery(".dname").find("td:eq(1)").text(); 

Edit: text() thay vì val() như @ freedomn-m chỉ ra

+0

chắc chắn là .val()? –

+0

Nó phải là văn bản .. anyways thanks Sam – Syed

1

Vì rằng <td> là đứa trẻ cuối cùng của bạn <tr> bạn có thể truy cập nó như dưới đây,

jQuery(".dname > td:last-child").text();

2

Bạn đã lọc trên tên lớp học tr, vì vậy không cần phải tìm lại bằng cách tr.

jQuery(".dname").find("td:eq(1)").text() 

Ngoài ra, bạn cần phải .text() để có được nội dung của một <td> không .val().

JSBin tại đây.

Hy vọng điều này sẽ giúp ích:

1

Thay thế n bằng con không.

$(".dname td:nth-child(n)").text(); 

Ví dụ: cho trẻ thứ 2

$(".dname td:nth-child(2)").text(); 
Các vấn đề liên quan