在asp.net中如何实现动态生成HTML表单

本文讲解"在asp.net中怎么实现动态生成HTML表单",用于解决相关问题。

经测试System.Web.UI.HtmlControls下的HtmlForm类,也就是我们在传统的asp.net中使用的Form表单对象,不适合动态生成Html代码。

于是自定义了一个简单的HtmlForm容器控件,只需要几行代码。看来Asp.net在封装Html元素方面还是很有优势的,微软为我们定义了大量的基础结构,很容易扩展使用。

public class myHtmlForm:HtmlContainerControl
{
    public myHtmlForm(): base("form")
    {
      this.Attributes.Add("method", "post");
    }
    public string Action
    {
      set
      {
        Attributes.Add("action", value);
      }
    }
}

使用很简单,直接new,然后向Controls集合中添加控件即可。

myHtmlForm form = new myHtmlForm();
form.ID = "myform";
form.Action = "test.aspx";
HtmlInputHidden hidf= new HtmlInputHidden();
hidf.ID = hidf.Name = "hidden";
form.Controls.Add(hidf);

最后在View中,输出HTML代码到响应流。

form.RendControl(Writer);

关于 "在asp.net中怎么实现动态生成HTML表单" 就介绍到此。希望多多支持编程宝库

如何通过HtmlHelper中PagingHelper类实现分页方法:本文讲解"怎么通过HtmlHelper中PagingHelper类实现分页方法",用于解决相关问题。MVC HtmlHelper扩展类PagingHelper实现分页功能 ...