jquery使用Class查找TR的TD并进行更改(对于Telerik MVC网格)

HaB*_*aBo 6 jquery telerik-mvc

这是我的标记

<tr class="t-detail-row">
    <td class="t-hierarchy-cell"></td>           
    <td class="t-detail-cell" colspan="5"></td>
</tr>
Run Code Online (Sandbox Code Playgroud)

我想找到带有类t-detail-row的tr并用类t-hierarchy-cell删除子td并用类t-detail-cell更改td的colspan

我试过这样的事

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);
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激.

有关情况的更具体细节


嗨,如何在触发网格扩展时调用客户端jquery函数.

我想要实现的就是.当我们扩展Telerik MVC网格时,我们会在详细行中得到这个标记

<tr class="t-detail-row">
<td class="t-hierarchy-cell"></td>
<td class="t-detail-cell" colspan="5"></td>
</tr>
Run Code Online (Sandbox Code Playgroud)

我想消除 <td class="t-hierarchy-cell"></td>它.

得到标记为

<tr class="t-detail-row">
<td class="t-detail-cell" colspan="Current+1"></td>
</tr>
Run Code Online (Sandbox Code Playgroud)

为此我虽然做了这样的事情

在网格扩展事件,如果我可以调用jquery函数然后因为我不会生成详细行标记,直到我们扩展网格

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);
}
Run Code Online (Sandbox Code Playgroud)

谢谢


只需在您的telerik代码中添加此行即可

.ClientEvents(exp => exp.OnDetailViewExpand("onExpandingtheGrid"))
Run Code Online (Sandbox Code Playgroud)

和你的上面的jquery函数雅虎中提到的休息!

Eva*_*van 18

具有单独的功能:

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

我在这种情况下使用了find,因为它看起来像是在尝试使用目标行进行点击或其他操作.如果是这种情况,请用目标替换tr选择器.