4

使用 HTML 标记

<form id="form" runat="server">
  <input id="donkey" type="text" placeholder="monkey" runat="server" />
</form>

我希望通过后面的代码获得输入的值

String s = Request.Form["donkey"];

但它只产生空值。当我调查数据结构时,我得到了类似的东西,$ctl00$main$donkey所以我知道它就在那里。过了一会儿,我简单地切换到

<form id="form" runat="server">
  <asp:TextBox id="donkey" type="text" runat="server"></asp:TextBox>
</form>

但是我仍然想知道如果由于某种原因我不会切换到 ASP 组件,如何从服务器端引用该对象。

4

4 回答 4

7

如果要使用 request.form 访问该值,请将 name 属性添加到 input 标签并删除 runat 属性。

<input id="donkey" name="donkey" type="text" />

否则使用

<asp:TextBox ID="donkey" type="text" runat="server"></asp:TextBox>

在cs上

string s = donkey.Text;
于 2012-07-30T11:30:31.507 回答
5

如果你想像这样获得输入使用的价值

  String s = donkey.value;
于 2012-07-30T11:26:50.510 回答
2

只是donkey.Value会从文本输入中返回应该有的值runat="server"。它将创建一个对象System.Web.UI.HtmlControls.HtmlInputText

于 2012-07-30T11:26:13.113 回答
2

我不确定 ASP.net 但要正确提交常规表单字段,它应该有一个name属性。这将是您可以查找表单值的关键。

于 2012-07-30T11:26:41.527 回答