网络编程 
首页 > 网络编程 > 浏览文章

asp.net动态生成HTML表单的方法

(编辑:jimmy 日期: 2026/5/7 浏览:3 次 )

本文实例讲述了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);

结论:

动态生成HTML表单就是这么简单明了。我以前可是自己拼接过HTML,然后Write啊。善于利用框架提供的类可以有效的提高开放效率,并且使代码的可读性良好。尤其是在做表格控件时,善用System.Web.UI.WebControls.Table控件,会很有帮助。

更多关于asp.net相关内容感兴趣的读者可查看本站专题:《asp.net优化技巧总结》、《asp.net字符串操作技巧汇总》、《asp.net操作XML技巧总结》、《asp.net文件操作技巧汇总》、《asp.net ajax技巧总结专题》及《asp.net缓存操作技巧总结》。

希望本文所述对大家asp.net程序设计有所帮助。

上一篇:asp.net利用反射实现给model类赋值的方法
下一篇:详解ASP.NET WEB API 之属性路由
一句话新闻
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。