2010-01-05 32 views
2

场景:我有以下结构;组(父母) - >项目(孩子)。asp mvc - 什么是动态添加数据控件的最佳方式

  • 一个组可以有很多项目。
  • 两个组和项目只能有一个可编辑的字段(字符串)

在其它父/子表数据我已经使用的局部视图,以显示两个父和子数据 - 与所述子数据是标准MVC索引(即每个旁边带有编辑/选项的项目列表)。

但是在这种情况下,父母只有一个字段,孩子也是这样,所以我不想打开一个单独的视图来创建/编辑新的子记录。

我希望能够做的是有效地编辑所有关联的子数据,而无需打开一个新视图,也许有一个添加按钮可以动态添加另一行。

所以我想我可以(以某种方式)写一些JavaScript来创建一个文本框,每次你点击一个按钮添加一个新的行,然后以某种方式在控制器中保存完成后的数据。

任何人都做了类似的事情,并指出我在正确的方向?

回答

0

对于客户端数据操作,我使用John Resig的micro-template函数,并创建一个脚本来更新dom。下面是约翰的样本:

<script type="text/html" id="item_tmpl"> 
    <div id="<%=id%>" class="<%=(i % 2 == 1 ? " even" : "")%>"> 
    <div class="grid_1 alpha right"> 
     <img class="righted" src="<%=profile_image_url%>"/> 
    </div> 
    <div class="grid_6 omega contents"> 
     <p><b><a href="/<%=from_user%>"><%=from_user%></a>:</b> <%=text%></p> 
    </div> 
    </div> 
</script> 

然后,您可以保持与你会序列化到一个隐藏字段,并发布到服务器的新数据的对象或数组。约翰的例子很简单,应该让你走。

如果您需要更多,请前往Dave Ward的Encosia,作为他的post regarding this

相关问题