2012-01-04 9 views
5

đây là dấu ấn của mình lênjquery Tìm TD của TR với Class và thực hiện thay đổi (đối với một mạng lưới Telerik MVC)

<tr class="t-detail-row"> 
    <td class="t-hierarchy-cell"></td>   
    <td class="t-detail-cell" colspan="5"></td> 
</tr> 

Tôi muốn tìm ra tr với lớp t-chi tiết-hàng và loại bỏ các td đứa trẻ với lớp t-phân cấp cell và thay đổi colspan của td với lớp t-chi tiết-cell

tôi đã cố gắng một cái gì đó như thế này

var newcolspan = $(e.row).find('.t-detail-row').children('td.t-detail-cell').attr('colspan'); 

$(e.row).find('.t-detail-row').children('td.t-hierarchy-cell').remove() 
.children('td.t-detail-cell').attr('colspan',newcolspan+1); 

bất kỳ trợ giúp nào sẽ được đánh giá cao.

Chi tiết cụ thể khác về tình huống


Xin chào, Làm cách nào tôi có thể gọi chức năng jquery của khách hàng khi mở rộng lưới được kích hoạt.

tất cả những gì tôi muốn đạt được là. khi chúng tôi mở rộng mạng lưới Telerik MVC chúng tôi nhận dấu ấn này lên một cách chi tiết hàng

<tr class="t-detail-row"> 
<td class="t-hierarchy-cell"></td> 
<td class="t-detail-cell" colspan="5"></td> 
</tr> 

tôi muốn loại bỏ <td class="t-hierarchy-cell"></td> trong đó.

và nhận được dấu ấn lên như

<tr class="t-detail-row"> 
<td class="t-detail-cell" colspan="Current+1"></td> 
</tr> 

cho tôi điều này mặc dù làm một số điều như thế này

vào lưới mở rộng sự kiện, nếu tôi có thể gọi một hàm jquery sau đó, vì tôi sẽ không có đánh dấu chi tiết hàng tạo ra cho đến khi chúng tôi mở rộng lưới điện

function onExpandingtheGrid(){ 
$('tr.t-detail-row').find('td.t-hierarchy-cell').remove(); 
$('tr.t-detail-row').find('td.t-detail-cell').attr('colspan',newcolspan+1); 
} 

Cảm ơn

Giải pháp


chỉ cần thêm dòng này trong mã telerik bạn

.ClientEvents(exp => exp.OnDetailViewExpand("onExpandingtheGrid")) 

và nghỉ ngơi như đã đề cập trong chức năng jquery trên yahoo của bạn!

Trả lời

15

với các chức năng riêng biệt của nó:

$('tr.t-detail-row').find('td.t-hierarchy-cell').remove(); 
$('tr.t-detail-row').find('td.t-detail-cell').attr('colspan',newcolspan+1); 

i dùng tìm trong trường hợp này bởi vì nó trông như bạn đang cố gắng sử dụng một hàng mục tiêu cho một nhấp chuột hoặc một cái gì đó. thay thế bộ chọn tr với mục tiêu của bạn nếu đó là trường hợp.

+0

Tôi đã cập nhật yêu cầu của mình cụ thể hơn, hãy tìm trong đó. Và rằng bạn rất nhiều cho thời gian của bạn. – HaBo

+0

Cảm ơn câu trả lời của bạn đã hoàn toàn hoạt động. – HaBo

4

Hãy thử điều này:

$('tr.t-detail-row td.t-hierarchy-cell').remove(); 
$('tr.t-detail-row td.t-detail-cell').attr('colspan', X); // replace X with desired colspan value 
+0

Tôi đã cập nhật yêu cầu của mình cụ thể hơn, hãy nhìn vào nó. Và rằng bạn rất nhiều cho thời gian của bạn. – HaBo

+0

Cảm ơn câu trả lời của bạn cũng đã làm việc cho tôi. vì vậy tôi đang nhấp vào – HaBo