Asp.net中从后台中如何获取html控件

比如定义html的文本框如下:

<input  type="text" onclick="fun()" id="htmlTxtDate"  />

想要在后台C#程序里面通过编程获取该文本框的值,一个简单的方法是:

在HTML控件上加上 runat="server" ,然后在后台C# CODE :this.控件ID.Value。例如:

<input  type="text" onclick="fun()" id="htmlTxtDate"  runat="server" />

然后C#里面Label1.Text = htmlTxtDate.Value;

不过这个方法感觉不太好:因为这个输入框是HTML的,加了runat="server"就是服务器控件了,那还不如干脆用VS提供的textbox控件,要不就有点四不像了呵呵

当然,有的时候确实就是要用html的文本框才方便做其他事情,但又要在后台去访问获取它的值,怎么办呢?

这个也有解决方法:不用runat="server"的话,在后台代码可以这样写:Request.Form["txtName"].ToString();就可以获得输入框的值了。注意:txtName是name属性值。

例如上面的例子:<input  type="text" onclick="fun()" name="htmlTxtDate"  />

然后在后台按如下方式访问:Label1.Text = Request.Form["htmlTxtDate"].ToString();

原文地址:https://www.cnblogs.com/huashanqingzhu/p/3763104.html