如何通过asp.net mvc或jquery提交包含动态数据行的表?

mel*_*aos 6 forms asp.net asp.net-mvc jquery submit

我非常喜欢asp.net mvc,目前我正在编写一个Web应用程序,允许用户从列表框中选择多个产品,并将它们添加到动态表中,其中包含可以添加或删除的行.

因此,我正在考虑使用jquery添加和删除表行,因此表行将通过append("xxx")添加.

但事情是我不熟悉asp.net mvc表单提交,从我到目前为止的理解,我可以稍后通过表单["id"]检索值,但如果我要通过该方法创建表行,我认为它要么具有相同的ID,要么我可以使用运行无ID和隐藏输入来跟踪添加的产品数量.

当我删除所有产品时,我可能还想隐藏整个产品表.

ps有点觉得我的方式就像一个大乱的乱糟糟的黑客,有一天会回来咬我.

问题:

  1. asp.net mvc有一个很好的方法来处理所有这些吗?我读过关于mvc tempdata的一些东西.
  2. 我有更好的方法来处理动态产品生成吗?以后在asp.net mvc中提交表单更容易
  3. 而且我发现你实际上也可以通过jquery提交表单,这两种方法之间有什么优点吗?在性能,安全性,维护等方面?

谢谢

Bri*_*ins 4

您可以发布对象集合;在 MVC 中。这是一个示例:http://www.hanselman.com/blog/ASPNETWireFormatForModelBindingToArraysListsCollectionsDictionaries.aspx

基本上,您可以使用 JQuery 创建表,但要确保控件的 ID 引用此方案,因此对于使用 JQuery 添加的下一行,请确保输入数据的控件使用列表中的下一个索引以及与基础绑定对象中的属性名称相同。

当您发布到服务器时,您可以循环访问该集合。

回答其他问题:如果您不想回发到服务器,您可以通过 JQuery 提交表单(也可以使用 ASP.NET MVC 来做)...否则,您无需担心 JQuery 提交。所以这可能会增加可用性。

HTH。