本文實例講述了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程序設計有所幫助。
新聞熱點
疑難解答
圖片精選