动态添加ASP.NET服务器端控件与Javascript

时间:2018-02-14 09:55:54

标签: html asp.net dynamic

我有一个简单的aspx页面。

在此页面中,我想添加代表键值对的动态下拉列表 - 文本框对。但我不知道页面加载时有多少。 所以我必须动态地(在运行时)将这些控件添加到页面

如果我在代码隐藏中添加这些控件,则会出现2个问题:

    由于autopostback,
  • 每次附加都会重新加载页面。它眨眼间。
  • 每当页面重新加载时,之前的附加消失。

如果我在客户端(javascript)中添加这些控件:

  • 在代码隐藏中无法访问控件(因为没有runat = server)因此验证步骤对用户开放(我认为验证步骤必须在代码隐藏中运行,否则这是完整性问题)。

关于这个问题会有什么方法?举个例子吗?

1 个答案:

答案 0 :(得分:1)

如果你想避免闪烁(页面重新加载),你必须使用JavaScript动态地将控件添加到表单中。

  

在代码隐藏中无法访问控件(因为没有runat = server)

此声明不正确,您始终可以使用Request.Form集合在服务器端访问表单控件。查看here了解更多详情。您将需要迭代此集合的内容以获取值。

  

我认为验证步骤必须在代码隐藏中运行,否则就是这样   完整性问题

在执行任何操作之前,您需要自己进行验证。您可能需要编写一些自定义验证逻辑。