2014-11-13 37 views
1

如果我有<tr>元素的可变数量的表格,ajax.actionlink insertionmode insertafter为表

<table id="my_table"> 
<!--there could be 1 tr or 3, don't know, server decides based on database--> 
<tr> 
    <td>a</td> 
    <td>b</td> 
    <td>c</td> 
</tr> 

</table> 

,我有一个Ajax.ActionlinkInsertionMode.InsertAfter,在这里我要插入一个新的<tr>我的目标"my_table"或者我必须针对最后的<tr>,我有?

如果是后者,那意味着我必须给最后一个<tr>元素一个动态生成的id值,以便我可以访问那个,这是否正确?

有没有更简单的方法来做到这一点?还是我误解了如何在作品后插入?

回答

1

你可以包括你的表的末尾一个隐藏的TR,然后用insertionMode.Replace

<table> 
    <tr id='1'> 
     <td>something</td> 
    </tr> 
    <tr id='replaceme' class='hidden'><tr> 
</table> 

不要忘记,你的更换HTML应包括另一<tr id='replaceme'>

真的应该有一个插入模式.append和前置

+0

我很迟钝,谢谢你让我意识到我的缓慢...不能相信我没有想到这个笑声,谢谢你的启发我 –

+0

我同意,我正在考虑追加 –

+0

只是想,我认为我需要“ReplaceWith”这个解决方案,因为替换替换了隐藏的tr元素内的所有内容,但是ReplaceWith替换了tr元素本身。如果我只替换隐藏tr中的内容,我不能在部分视图中返回一个tr,因为它将嵌套在主视图中的隐藏tr中...你跟着我吗?不知道我是否有意义 –