1

我在一些网站上看到让他们的用户通过输入原始文本框来添加记录,并且有一个加号图标可以让他们添加另一条记录,如果他们有的话,方式如下:

电话号码: | _ __ _ | 姓名: | _ __ _ __ _ __ | +

| ___添加按钮___ |

如果用户有另一条记录,那么他点击那个加号图标,表格变成这样:

电话号码: | _ __ _ | 姓名: | _ __ _ __ _ __ | -

电话号码: | _ __ _ | 姓名: | _ __ _ __ _ __ | +

| ___添加按钮___ |

几行之后是这样的:

电话号码: | _ __ _ | 姓名: | _ __ _ __ _ __ | -

电话号码: | _ __ _ | 姓名: | _ __ _ __ _ __ | -

电话号码: | _ __ _ | 姓名: | _ __ _ __ _ __ | -

电话号码: | _ __ _ | 姓名: | _ __ _ __ _ __ | -

电话号码: | _ __ _ | 姓名: | _ __ _ __ _ __ | -

电话号码: | _ __ _ | 姓名: | _ __ _ __ _ __ | +

| ___添加按钮___ |

请告诉我如何在 Asp.net WebForms 中实现这一点和/或给我一些关于这个结构是什么以及其他人如何实现它的提示?(最好是服务器端解决方案)

4

3 回答 3

2

起初我不明白为什么你需要一个服务器端解决方案,除非/否则有特殊需要。

您可以通过多种方式实现这一目标

1 在客户端构建控件

当用户单击 + 或 - 时,您可以在客户端构建控件并继续将它们添加到您的容器中,最后或定期如果您希望可以使用回调将更改保存到服务器。

在客户端,您可以唯一地命名控件以在保存期间从中获取值。像 tbx_phone_number_1 , tbx_phone_number_2 等等

您还可以在客户端拥有一个 JSON,并且对于每个 - 和 +,您都可以将记录推送到 json 中,最后将 JSON 发送回服务器进行保存。

2 在服务器端构建控件

每次单击 + 或 - 时,您都会在服务器端进行回发并构建控件,这是一个繁琐的过程,您会浪费网络带宽和服务器性能等资源。

将行动态添加到表 中 使用 jQuery 动态地将行和列添加到表中

动态添加控件

如何将输入字段(文本框)添加到使用 jQuery 动态创建的表中

于 2012-11-14T12:18:17.190 回答
1

这应该为您提供您正在寻找的服务器端功能:

使用具有类似 GridView 界面的 ListView 插入新记录

类似的功能:

如何使用 c# 将记录插入到 asp.net 的列表视图控件中?

使用 ASP.NET 3.5 的 ListView 和 DataPager 控件:插入数据

于 2012-11-14T12:16:05.217 回答
0

这是一个非常好的解决方案:

http://www.aspsnippets.com/Articles/Create-dynamic-textbox-using-JavaScript-in-ASP.Net.aspx

于 2012-11-20T09:34:33.273 回答